1

1 つのスクリプトではvar_dump()、オブジェクトを出力するために使用します。

foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS'][$this->extKey.'/'.$this->scriptRelPath] as $classRef) {
                $hookObj = t3lib_div::getUserObj($classRef);
                var_dump($hookObj);

結果は次のとおりです。

object(tx_job_dagoupost)#73 (3) { ["extKey"]=> string(3) "job" ["prefixId"]=> string(10) "tx_job_pi1" ["scriptRelPath"]=> string(32) "hooks/class.tx_job_dagoupost.php" } 
object(tx_christianvolunteer_dagoupost)#79 (2) { ["extKey"]=> string(19) "christian_volunteer" ["scriptRelPath"]=> string(47) "hooks/class.tx_christianvolunteer_dagoupost.php" } 
object(tx_watermark_dagoupost)#73 (2) { ["extKey"]=> string(9) "watermark" ["scriptRelPath"]=> string(38) "hooks/class.tx_watermark_dagoupost.php" }

質問:

  1. #73とはどういう#79意味ですか?

  2. object(tx_job_dagoupost)#73object(tx_watermark_dagoupost)#73は異なるオブジェクトですが、同じ id を持っています#73。なぜですか?

4

1 に答える 1

0
  1. ここで説明したように、記号 # はオブジェクトの PHP 内部識別子です。
  2. 異なるオブジェクトの同じ識別子は、最初のオブジェクト (tx_job_dagoupost) が一時的 (変数に割り当てられていないか、変数が未設定) であり、PHP が次のオブジェクトに同じ識別子を使用したことを意味します。
于 2013-08-15T02:49:31.293 に答える