php spot
phpが使えるレンタルサーバー特集
検索グラス
トップページへ

$thisの仕様変更
PHP4での$thisとPHP5での$thisは多少変更があります。

PHP4 で、$this に対する代入によって、他のオブジェクトを代入出来ていましたが、これが出来なくなりました。

class A{
  var $_name;
  function A($text)
  {
    $this->_name = $text;
  }
  function output()
  {
    echo $this->_name;
  }
  function copy($obj)
  {
    $this = $obj;
  }
}

$obj1 = A("ken");
$obj1->output(); // ken が出力

$obj2 = A("ryu");
$obj2->output(); // ryu が出力

$obj1->copy($obj2);

$obj1->output(); // PHP4 では ryu が表示されるが PHP5では ken のまま。

他のクラスをそのままコピーしてしまう際に便利な機能でしたが、PHP5ではこれが使えなくなったようです。

スポンサードリンク



もどる
管理人の新着ブログ記事

    プライバシーポリシー | お問い合わせ
copyright © 2003-2024 phpspot all rights reserved. powered by phpspot CMS.