来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…
![はてなブログ | 無料ブログを作成しよう](https://cdn-ak-scissors.b.st-hatena.com/image/square/06a15c64ba0ceec233d86d71001ebb29a9dcbf5d/height=288;version=1;width=512/https%3A%2F%2Fcdn.blog.st-hatena.com%2Fimages%2Ftheme%2Fog-image-1500.png)
来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…
PHPには5.0.0以降SPL (Standard PHP Libray)という枠組みが導入されています。これにより、Iteratorインターフェースを実装したクラスのインスタンスであれば、foreach文で配列と同じように取り扱えます。自分でクラスを作るときもIteratorを実装すれば使うのが楽ですし、コードも読みやすくなると思います。 また、PHPに標準で組み込まれているクラスにはIteratorを実装しているものが多数あります。たとえば僕の手元のPHP5.2.9には24個のイテレータがあり、そのうちいくつかは十分に実用的なクラスです。ただ、日本語の資料が少ないせいか、かなり知名度は低いように思います。本記事では4つの便利な組み込みイテレータを紹介します。 SPLのクラスにはデザインパターンの考えが多く含まれています。特に、イテレータを元にイテレータを作るような使い方は、保守性の高い
PHP micro-optimization tips | Alex @ Net PHPコーディングに関する最適化TIPS というのがまとまっていましたのでご紹介。 元記事では、micro-optimization ということで、これらを直すのももちろんだけど、ロジックを直す方がパフォーマンスは改善されるということを言ってるようです。 個人的な勉強がてら、メモとして残します。 ・__call のマジックメソッドを使うと遅い ・staticなメソッドはインスタンス化したオブジェクトのメソッドより速い ・関数呼び出しは、staticなメソッド呼び出しより高速 ・ローカル変数へのアクセスはグローバル変数へのアクセスより速い ・グローバル変数へのアクセスは、オブジェクトのプロパティより速い ・オブジェクトプロパティへのアクセスは、__get, __set を使うと遅い ・初期化された変数はそうでな
Read PDF and Word DOC Files Using PHP PHPでWordのdocファイルやPDFをテキストとして読み取る方法が紹介されていました。 XPDF package、Antiword というプログラムをshell_execで外部起動するだけなのですが、WordやPDF用の検索のインデックスを作成する時など、なかなかこれは便利そうです。 PDFの場合は、XPDFパッケージをインストールして入るコマンドのpdftotext にファイル名を渡します。最後の - も必要みたい。 $content = shell_exec('/usr/local/bin/pdftotext '.$filename.' -'); //dash at the end to output content これで $content にpdfのテキストが入る Wordの場合も同様に、Antiwor
どうやら僕はround()の人なんだそうです(参考資料)。それはそうとして、もう少し前までは==の人だった気がしますので、その頃の話題を再掲します。 僕は2年ほど前に「==がキモい件」などのタイトルで勉強会で発表していた頃がありました。PHPの==演算子の挙動について、啓蒙が必要だろうと考えていたためです。当時に比べれば最近はPHPの==演算子の不思議な挙動に関する記事を見る気がしますが、まだまだキモさの全容を把握している人は少ないような気もします。 PHPの==演算子の何がキモいのか、一言で言うと両辺の値の型をテキトーに合わせて比較する点です。言い換えると、「型はさておき、等しい値を意味しているようならtrue」という演算子です。 マニュアルの「PHP 型の比較表」の「==による緩やかな比較」を見てもキモさがチラホラ見えるんですが、今回は更に突っ込んだ比較表を作ってみました。 まずは以前
Apache/PHP/MySQL/SQLite/SQLiteManage/PhpMyAdmin/Zend OptimizerをWindowsにまとめてオールインワンでインストールすることができるようになっているのがオープンソースで開発されているこの「VertrigoServ」。 これらの各ソフトについて簡単に設定を変更できるコントロールパネルっぽいものがタスクトレイから一発で呼び出せるようになっており、非常に設定が簡単です。また、インストーラは日本語化されているので安心です。 実際のインストール方法などは以下から。 VertrigoServ http://vertrigo.sourceforge.net/ ダウンロードしたら実行します 「OK」をクリック 「次へ」をクリック 「同意する」をクリック 「次へ」をクリック さらに「次へ」をクリック 「インストール」をクリック インストール中……
DaveDevelopment ? Archive ? 10 tools for Modern PHP Development で「PHP の開発に使われている10個のツール」が紹介されていました。 PHPUnit ユニットテスト自動化ツール Selenium RC Webブラウザからの総合テスト自動化ツール PHP CodeSniffer PHPのコードスタイルをチェックするツール Phing PHP版Ant Xdebug デバッグツール PHPDocumentor PHPソースからドキュメントを作成ツール phpUnderControl ビルドツール ZendFramework or insert your favourite framework here フレームワーク Subversion バージョン管理システム Jira 課題トラッキング&プロジェクト管理アプリケーション 私が使
phpニコニコ動画がいつの間にかRSS吐いてる件大抵URIの後ろに?rssとかやれば吐いてるようです。ニコニコ動画がいつの間にかRSS吐いてる件結構前からだったそうですが、全然知りませんでした。phpでrssというかxmlに触ったことが今まで無かったので、これを機に少しばかりお勉強してみることに。 まずはニコ動の新着動画のRSSを開いてみる。http://www.nicovideo.jp/newarrival?rss=atom そこでソースを表示させてみると、「xml version="1.0" 〜」から始まるHTMLっぽいものが出てきます。これがRSS*1の中身です。xmlとかいう言語で書かれています。 この中の「動画タイトル」だったり「動画url」を取得してきて、並び替えたり加工したりあるいはもっと見やすいように表示したり、なんてことがSimpleXML関数というものを使うと出来るそう
APIが提供されていないサービスから欲しい情報だけを取得するには、HTMLなどから自前でスクレイピングを行うしかありません。PHPでのスクレイピングに役立つライブラリなどをまとめてみました。 PerlやRubyには色々と便利そうなものが見つかるのですが、PHPにはなかなかこれといったものがないですね。 Webスクレイピングライブラリ HTMLScraping HTMLをXML化してDOMやXPathで操作できるクラス。主にHTTP_Request+HTMLParser(XML_HTMLSax3を含む)/Tidy+Cache_Liteという構成で、スクレイピングに必要なものが一通り揃っている。ライセンスはLGPL他。 WebScraper シンプルな汎用スクレイピングクラス。HTTP_Client+HTMLParser(XML_HTMLSax3を含む)という構成で、XPathで要素を抽出でき
PHPでATOM、RSS1/2フォーマットのフィードが超簡単に吐き出せる「FeedWriter.php」 2008年03月12日- PHP Universal Feed Generator (supports RSS 1.0, RSS 2.0 and ATOM) | ajaXray It’s been a while since I’ve planned on developing a feed generator that fulfills most my needs by supporting the various feed formats. PHPでATOM、RSS1/2フォーマットのフィードが超簡単に吐き出せる「FeedWriter.php」。 RSS1や2、ATOMのフォーマットを理解して出力するのは面倒ですね。 このライブラリを使えば、RSS1/2もATOMも、クラスを作成す
PHP Performance Series: Caching Techniques - Mike Willbanks : getting into the mind of a php developer. PHPでパフォーマンス向上のためのキャッシュテクニック色々が紹介されていました。 取得に時間のかかるデータはキャッシングで高速化、は当たり前の処理ですが、その方法もいろいろあり、コードが紹介されていたので解説 apc によるキャッシング方法( APCの説明 ) APCはPHPのコードを共有メモリなどに中間形式にキャッシュしておいてPHPの実行速度を上げるための仕組みです。 そのAPCエクステンションを有効にすると、データをキャッシュしておくためのAPIも提供されます。 <?php if (($config = apc_fetch('config')) === false) { requ
はじめに PHPの世界ではフレームワークがさかんに発表され、次から次へと新興勢力が現れてきます。そんな中で大きなコミュニティに発展しているのがCakePHPフレームワークです。一部では、開発環境をいったんCakePHPからRuby on Railsに移行したものの、再びCakePHPに戻ってくるという「CakePHP回帰現象」も起こり始めています。CakePHPは、手軽に利用できるPHP言語にぴったりの「手軽に利用できるフレームワーク」です。フレームワークとは、先人の知恵をまとめ上げたものと言うことができます。その中にはどんなノウハウが蓄積されているでしょうか。PHP4/PHP5で使用できるRails風フレームワークCakePHPを使って、フレームワークの処理の流れを調べてみましょう。対象読者 この記事は、CakePHPでの開発を始めた方が対象です。CakePHPに関する基本的な知識に関し
Test (Sample) Data Generators Sample / test data is an effective way to test web projects & applications. WEBアプリ用のテストデータを作るもの色々。 テストデータの生成は結構面倒ですが、ツールを使えば簡単、ということで1つはテストデータ生成ためのツールは押さえておきたいですね。 以下に列挙 generatedata.com テストデータをHTML、Excel、XML、CSV、SQLの形式で出力可能。 出力データも、個人情報データや、テキストデータをフォーマットを選択して出力できます。 Datagenerator - GUIで動作するデータジェネレーター DBMonster データベースにランダム生成データを入れられるオープンソースソフト CSV data generator Ruby
趣味でやっている人のことは、まあ、いいとして(踏み台にされる可能性はあるけど)、仕事でPHPを使うときの注意を書いておこう。 コーディング規約を守る。組織にコーディング規約がないなら、Zend Framework PHP標準コーディング規約 [zend.com]を使う。オレ流コーディングスタイルは禁止。 内部コードにはEUC-JPかUTF-8を使う。入出力もできるだけShift JISを避ける。Shift JISを使う場合には2byte目に0x5Cを含む文字の動作を忘れずに確認する。 開発環境の警告レベルをE_STRICTにする。本番環境ではdisplay_errorsをオフにする。 register_globals、magic_quotesはオフにする。 type hintingを積極的に使う。 スコープの長い配列をクラスでラップする。 プレゼンテーションとロジックを分割すること。プレゼ
hinami.net管理人の何か。投稿者:ykt 投稿日時:2007-03-01 - 23:51:44 カテゴリー:00_日並み記 - トラックバック(No Trackbacks) とりあえず現状でもっとも新しいバージョンである2.2をインストールすることとする。 Vistaではこれまでよりもセキュアになった(らしい)ので、インストーラのアクセスが拒否されてしまう。 管理者でなければ操作できないらしい。 結果を言えば、調べてみたらいい方法が出てきた。のでここに記しておくこととする。 検索ワードは「Apache Vista install」でGoogleのすべてだ。 参考サイト:http://wyome.com/bl... なお、見ながらインストールする前に、一回読み物としてざっと読むことをお勧めする。今回に限らず。 1:msi(インストーラバイナリ)を拾ってきて適当な場所
PHPでケータイからセッションを使う場合の設定方法 Tweet 2007/12/12 水曜日 matsui Posted in PHP, サーバ | 23 Comments » 今回は、ケータイ上からPHPのセッションを使う場合の設定方法についてです。 ケータイからPHPのセッションを機能を使う場合、端末によってはクッキーが利用できない場合があるため、そのままでは使うことができません。 セッションを使いたい場合は、インストール時のconfigureオプションに、「–enable-trans-sid」を付ける必要があります。 ※Windowsの場合は特に設定の必要はありません。 また、「php.ini」の設定で、次のように設定してください。 ※設定変更後はWebサーバの再起動が必要です session.use_trans_sid = 1 もしくは「.htaccess」でも設定することができま
[追記]id:hetimaに指摘された、32bitアーキテクチャでの問題を修正。大感謝。 携帯電話からのWebアクセスゲートウェイのIPアドレスから、 携帯キャリアを判別したい場合がある。 通常は、id:tokuhiromによる Net::CIDR::MobileJP(WWW::MobileCarrierJP)を使うといいと思う。 DSAS開発者の部屋:携帯ゲートウェイのIPアドレス帯更新を効率的に確認する方法 http://d.hatena.ne.jp/tokuhirom/20071207/1196989588 YAMLが出力されるので、さまざまな環境で利用ができるよ! 今回、PHPで携帯キャリアを判別したいと思ったんだけど、 PHPでYAMLを読んでその中身をすべて検査するなんてやだいやだい! と沸き立つような強い衝動が。 というわけで、cidr-mobilejpというPythonスク
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く