2016-09-14 6 views
-1

基本的に私はファイルを持っています、file1.phpと言うことができ、別のfile2.phpが含まれています。PHPのインクルードで別のファイルの変数を使用する方法はありますか?

file1.phpには、いくつかの操作を実行した$dateStringという変数が含まれています。

file2.phpも、この変数は$dateStringfile2.phpをインクルードする前に初期化されていても、このインクルードファイル内で参照されていないが$dateStringと呼ばれる同じ変数を持っています。

だから、これは次のようにfile1.phpがどのように見えるか、現在ある:

$dateString = 'some expression'; 

include 'file2.php'; 

file2.phpは基本的にfile2.phpから他のすべては除き適切に呼び出されているfile1.php

echo $dateString; 

に初期化された変数をエコーし​​ようとしていますその1つの変数。

これはうまくいけばうまくいきます。これはPHPで可能ですか?変数をグローバルにする必要がある他の場所や、子ファイル内の親ファイルから変数を参照することができないということを他の人が指摘しています。前もって感謝します!

+5

自分で試してみませんか?あなたはPHPと変数を持っています。それを試しても何も悪いことはありません;) –

+0

これはそのまま動作するはずです。 PHPがファイルをインクルードすると、インクルードされたファイルのコードを呼び出したファイルに効果的に貼り付けるので、インクルードされたファイルはそれを呼び出すファイルから変数にアクセスすることができます。関数内でアクセスする場合は、グローバル変数にする必要があります。 – andrewsi

+0

私はそれを試してみました。私は何百万もの異なる方法でそれを試してきました。その理由は、私のコンセプトや知識の欠如の点で私が紛失しているものがあるかどうかを尋ねていたのです – user3750929

答えて

0

PHPのinclude()を使用すると魔法のようなことはありません。インクルードされたファイルのコードは基本的に、あなたがそれをインクルードしているところに挿入されます。その結果、一つの大きなPHPファイルが生成されます。
"親"か "子"ファイルであるかどうかは重要ではありません。PHPが上から下に1つの結果ファイルを解析するので重要な位置です。

たとえば、ファイルBを含める前にファイルAに変数を設定した場合、ファイルBは変数について知ります。しかし、ファイルBをインクルードした後にファイルAに変数を設定した場合、ファイルBはそれを認識しません。

0

コーディングでは、他の人に尋ねる前に、自分のことを試してみることが大切です。

変数はグローバルであり、別のファイルを組み込み、file2.phpのfile1.phpにある変数を使用することができます。あなたが関数内でそれらを使用している場合

そうでなければ、私が使用することをお勧めしたい:

上記
global $var; 

のみの機能で使用する必要があります。

関連する問題