あなたの知らない PHP 5つの秘密。
- Date
- 2006-07-16 (Sun)
- Category
- Links | Translation | Trivia | php
以下は、5 Things You Probably Didn't Know About PHP By Gregory Szorcのいい加減訳です。
?> はオプション
<?php
...
?>
たいだい上のように PHP のコードを書くと思うけれど、最後の ?> は実は書かなくてもいい。少なくとも PHP 5.1 では動く。問題点はあるけど、XML なんかの出力には、?> 以降に(意図的でない)空白行が入ると問題を引き起こす(こともある)ので、終了タグを書かない。
他言語を PHP 中に埋め込むことができる
Java, Perl, Python と .NET なんかは PHP から実行できる。Java Inteface はとってもクール。
配列へアクセスする方法で、オブジェクトも扱える
Standard PHP Library (SPL) を使えば、オブジェクトをあたかも配列のように扱える。 例えば ArrayObject を使うと以下のようなことが出来る。
$object = new MyObject();
$object['name'] = 'Hello World';
あるいは
$object = new MyObject();
foreach ($object as $k=>$v) {
echo "$k = $v\n";
}
など。
require() は require_once() より速い
(これは PHP 5.2 までの話だけれど、)require_once でなく require を使った方が、アプリケーションが大きくなればなるほど、相当速くなる。require_once は呼ばれるたびに余分な system call が走って重複がないことを確認するから。「じゃぁどうやって重複がないことを保証するわけ?」「まだ require_once なんか使ってんのがダセーの。__autoload をうまく使え。」もし SPL が入ってるなら、spl_autoload_* を使えば複数の autoload ができる。より詳しい内容は Zend Framework ML のこのスレを読もう。
PHP 5.1.0 未満を使ってる奴はアフォ
PHP 5.0.x ブランチはもうメンテされてない。PHP 4.x ブランチは死んでる。いかに理由を挙げるから、まだ移行してない奴はするように
- たいていの PHP4 で書かれたコードは動く。動かないとか言ってたのは FUD。開発者は互換性確保のためによくやってるから、まだ PHP4 を動かしてる奴は PHP 4 から PHP 5 への移行: 下位互換性のない変更点 を見ながらコードを grep するように。
- PDO 使え! SQL を別ハンドラにかく必要なくなるし、SQL Injection 対策もばっちりになる。
- Standard PHP Library (SPL) は今まで PHP で考えられかったすごいこと。
- いくつかの人気アプリが PHP5 への以降をすませた。例えば MediaWiki 1.7
- PHP5 のオブジェクトモデルは他のオブジェクト指向言語によく似てる。例えば Java とか。PHP5 はアクセス修飾子もあるし、抽象クラス、インターフェイス、それにマジックメソッドもある。
以下感想。
僕は PHP の parse の処理を考えると、閉じタグがいらない理由はなんとなくわかるけど、場合によりけりだと思うなぁ。Class 定義の書いてあるファイルとか、人に見せるコードはちゃんと閉じたい。直接関係ないけれど、始まりは <?php でするのは大賛成です(できれば short-open-tag を php.ini で off にして)。
他言語埋め込みは、僕にはとりあえず必要性がないのでよくわかりません。
SPL の ArrayObject は、Greg 曰く database query result とか LDAP directory queries によく使って便利だとか。ちょうど昨日も書いたけど、SPL は面白そうなので今度触ってみよう。
PDO 使えってのも、いいんだけど、『PDO 使えば SQL Injection 対策になる』ってのは危ないね。ちゃんと使えば、SQL Injection を起こすコードを書きにくくなるってだけだし。
Comment:0
Trackback:0
- TrackBack URL for this entry
- http://blogs.grf-design.com/mt/mt-tb.cgi/180
- Listed below are links to weblogs that reference
- あなたの知らない PHP 5つの秘密。 from The Croton