私は別のクラスをフェッチして何らかの形でそれを返すPHPクラスに取り組んでいます.明らかにコンストラクターは値を返すことができないので、参照渡しを見ていて、これが私が得たものです:
<?php
class Example {
public function __construct($name,&$var){
//This registers the class in my system (I know this part works)
IceTray::$Registry->registerLibrary($name);
//this fetches the object of the registered class above (I know it works)
$var = IceTray::$Registry->Libraries->$name;
}
参照渡しが間違っていますか? 私のプロジェクトでこれを使用するとき:
$test = 0;
$lib = new Example('ClassName', $test);
$test->testing();
$Test は、オブジェクトを格納する変数です。コンストラクターの最初の引数は、登録して、2 番目の引数である参照渡しの変数に割り当てるクラスの名前です。次の行は、要求されたクラス名内でメソッドが呼び出されますが、機能していません。
エラーも何もありません。参照渡しの概念に慣れていないので、何か間違っているのかもしれません。どんな助けでも大歓迎です、事前に感謝します!