親愛なる兄弟たち、私は最近 Tiantian Group Purchase のコードを見ていて、/modules/index.mod.php に次のコードを見つけました。
function ModuleObject( $config ) { $this->MasterObject($config); $runCode = Load::moduleCode($this); $this->$runCode(); }
これはクラスです。コードはこれ以上です。投稿して見てください。
class ModuleObject extends MasterObject{ function ModuleObject( $config ) { $this->MasterObject($config); $runCode = Load::moduleCode($this); $this->$runCode(); } function Main() { $clientUser = get('u', 'int'); if ( $clientUser != '' ) { handler('cookie')->setVar('finderid', $clientUser); handler('cookie')->setVar('findtime', time()); } $data = logic('product')->display(); $data || header('Location: '.rewrite('?mod=subscribe&code=mail')); $product = $data['product']; $this->Title = $data['mutiView'] ? '' : $product['name']; include handler('template')->file($data['file']); } function ExpressConfirm() { $oid = $this->Get['id']; $result = $this->OrderLogic->orderExpressConfirm($oid); if ( $result ) { $this->Messager(__('已经确认收货,本次交易完成!'), '?mod=me&code=order'); } else { $this->Messager(__('无效的订单号!'), '?mod=me&code=order'); } }}
手動クラウド:
変数関数
PHP は変数関数の概念をサポートしています。これは、変数名の後に括弧がある場合、PHP は変数の値と同じ名前の関数を探し、それを実行しようとすることを意味します。
マニュアル クラウド:
変数関数
PHP は変数関数の概念をサポートしています。これは、変数名の後に括弧がある場合、PHP は変数の値と同じ名前の関数を探し、それを実行しようとすることを意味します。
先輩、検索ドメインに制限はありますか?例: 現在参照されているファイル内のすべての非クラス関数/現在参照されているファイル内のすべての非クラス内およびクラス メンバー関数/現在参照されているファイル内のすべてのクラス内静的関数/
$this-> runCode();
これはクラス内にある必要があります
class ModuleObject は MasterObject を拡張します
親クラスと public クラスに移動して見つけます
設定ファイル config.php (通常はこれと呼ばれます) に移動して確認してください 導入されたファイル
$ this- & gt; $ runcode ();
2 行目の $ runcode は 1 行目の $ runcode に関連していますか?
$this->
これは発見されました。3階で述べたように、これは変数関数であり、最初の行の$runCodeによって返される文字列は関数名を表します。例:
$func = 'Main'; $func(); function Main(){ echo "This is a variable function"; }
関数です。
echo $runCode を確認できます
extends MasterObject の継承された親クラスはどこですか
?
phpの基本クラスですか?
マスターオブジェクトが見つかりません