PHPの変数、定数、演算子

以下は、恥ずかしながら、つい最近知りました。

変数 $str[n] (文字列を配列に分解して返す nはオフセット)

文字列の変数は、実は各文字を一文字ずつ配列として取り出すことができる。呼び出す時は、左(文字列の頭)からのバイト数を添え字にする。

 例 :
  $str = ’012345678′;
  echo ‘$str[0] = ‘ . $str[0] . ‘<br />’;
  echo ‘$str[1] = ‘ . $str[1] . ‘<br />’;
  echo ‘$str[2] = ‘ . $str[2] . ‘<br />’;
  echo ‘$str[9] = ‘ . $str[9] . ‘<br />’;
 結果 :
  $str[0] = 0
  $str[1] = 1
  $str[2] = 2
  $str[9] =
 (注 : バイト単位で分解されるので、マルチバイトでは使用できない)

定数 __FILE__

__FILE__ というのはそのスクリプトの物理パスを返す定数。

 例 :
  echo __FILE__ ;
 結果 :
  /Users/Tail/Sites/index.php

似たようなのに __DIR__ というのがあり、これは __FILE__ からファイル名を除いたディレクトリ名を返す定数。(PHP 5.3.0 で追加)
これは dirname(__FILE__) と同値であるので、5.3.0 未満ならこれを使う。

 例 :
  echo dirname(__FILE__) ;
 結果 :
  /Users/Tail/Sites  (←後尾にスラッシュはつかないので、注意)

これらはマジカル定数(or マジック定数?)と総称するらしく、他にも __LINE__ 等いくつかある。

参考 : PHP マニュアル

 ⇒ 自動的に定義される定数

& 演算子 : リファレンス

PHP において、リファレンスとは同じ変数の内容を異なった名前でコールすることを意味する。
下の例では、$b は 最初の $a の値 10 を代入したのではなく、$a の内容と常に同値であることを示す。

 例 :
  $a = 10;
  $b =& $a;
  $a = $a + $b;
  echo $b;
 結果 :
  20

参考 : PHP マニュアル

 ⇒ リファレンスの説明

Tail-Lagoon @ 20:17

コメントおよびトラックバック受付中です。
TB : http://weblogs.tail-lagoon.com/WebPC/2008/07/08/42/trackback/

コメントをどうぞ

この投稿へのコメントは RSS 2.0 フィードで購読できます。