初心者なので勉強中にわからないこともあり、検索するのも簡単ではないので、皆さんに質問したいと思いここに送信しました。
すべての回答と助けに感謝します。
タイトルの通り:
リーリーa.phpの擬似コードは以下の通りです:
リーリーb.phpのコードは以下の通りです
リーリーc.php
リーリー達成する必要がある目標は、変数値を C.PHP ファイルで直接読み取れるようにすることです。
大まかなロジックは上記の通り なお、この部分はフレームワークのassign/displayに似ていると個人的には感じているのですが、実装方法が分かりません。
上記のコードはエラーを報告します:Notice: Undefined variable: str
皆さんからアドバイス(または文章を書く習慣など)をいただければ幸いです。
ありがとうございます。
初心者なので勉強中に分からないことがあり、調べるのも難しいので皆さんに質問させていただきました。
すべての回答と助けに感謝します。
タイトルの通り:
リーリーa.phpの擬似コードは以下の通りです:
リーリーb.phpのコードは以下の通りです
リーリーc.php
リーリー達成する必要がある目標は、変数値を C.PHP ファイルで直接読み取れるようにすることです。
大まかなロジックは上記の通り なお、この部分はフレームワークのassign/displayに似ていると個人的には感じているのですが、実装方法が分かりません。
上記のコードはエラーを報告します:Notice: Undefined variable: str
皆さんからアドバイス(または文章を書く習慣など)をいただければ幸いです。
ありがとうございます。
global $array;
只是修改了$array的作用域,但是extract($array);
は関数内で実行されるため、$str のスコープは引き続き関数内にあります。c.php では var_dump($arr['str']) を実行できます。
あなたが言った2つの文について、「また、この部分はフレームワークのassign/displayに似ていると個人的に感じます」と「しかし、それを実装する方法がわかりません」は矛盾しています。この部分はフレームワークの代入/表示と似ていると思いますか?
クラスを使って例を書く場合も同じで、3つのファイルを別々に定義する必要はなく、快適に見えますが、使用している関数を見ると、オブジェクト指向の考え方がうまくできません。私たちが与えるとき、あなたのステップは安定していません。あなたのスプリントテクニックは確かに意味がありません。
PHP
中所有的变量都有作用域,你看到的框架中使用assign/display
等形式的模版引擎,都是把extract
输出变量和include
引入模版文件放在同一个函数中,这样才能使变量作用域一致,才能从被引入的文件中获得变量的值。而你的写法,把两个操作拆到不同的函数中,当然就不能互相访问了。别说你在c.php
中想获得变量的值,你在say("str","thinks");
それ以降でも直接入手することはできません。
関数のグローバル変数スコープと内部変数スコープの問題をよく理解していないようです。改めてコンセプトや使い方を確認してみるのもおすすめです!
あなたの考えによると、var_dump($str); の $str は、extract($array); のパラメータ 'str' です。実際、この時点で var_dump が取得したいのは、say 関数の変数 $str です。 。
あなたがやっていることは以下のとおりです:
$str を取得できません。