HOME>WEBプログラム覚書>PHPメモ

PHPメモ

ブレイクスルーできそうな気がしたけど 結局どうにもならなかったコード。

何が問題だったかは覚えてない・・・

コード

PHP

  1. <?php
  2. // オブジェクト以外からオブジェクトへの型キャストは
  3. // stdClassのインスタンスとなる
  4. $var1 = array("func" => create_function("$x, $y", "return $x * $y;"), "num" => 5);
  5. $obj1 = (object) $var1;
  6. $func1 = $obj1->func;
  7.  
  8. var_dump($func1(5, $obj1->num));
  9.  
  10. // 同じこと
  11. $obj2 = new stdClass;
  12. $obj2->func = create_function("$x, $y", "return $x * $y;");
  13. $obj2->num = 2;
  14. $func2 = $obj2->func;
  15.  
  16. var_dump($func2(5, $obj2->num));
  17. ?>

実行結果

int(25) int(10)

実験段階のものもありますがrunkitを利用すれば クラスや関数を動的に操作できるっぽい。

投稿日 2009年3月19日 13:45
カテゴリ PHP
タグ スクラップ
トラックバック URL http://www.kantenna.com/cgi-bin/mt504/mt-tb.cgi/1171

コメント

コメントする
Name
Email Address
URL