sql >> データベース >  >> RDS >> Mysql

関数内でrequire_onceを使用する方法

    実際には、技術的な観点から、require_once()を使用できます。 関数内。ただし、それはおそらく悪い考えであり、あなたが本当にやりたいことではありません:

    • 関数内にコードを含めると、文字通りそこにコードが含まれます。これは、含まれているすべてのコードが関数のスコープ内で評価されることを意味します。 PHPはすべての関数をグローバルに宣言しますが、変数とプレーンコードシーケンスはローカルにバインドされるため、現在実行されている関数の外部には表示されません。

    • インクルードされたファイルをロードするために相対パスを使用するため、特定のファイルシステムレベル内から関数を実行するように制限されます。これにより、コードの使用方法が制限されます...

    含まれているファイルにローカル構成が含まれている場合、これは実際には必要なことかもしれませんが、ほぼ確実にこれに遭遇します。

    • require_once() 必要なのは1回だけで、これが関数の目的です。つまり、関数getTierOne()を入力した場合 1回以上、その後の実行ごとにrequire_once() 単にしない 最初の実行ですでにあるので、任意のコードを含めます。したがって、構成を含めるかどうかは異なります。それは恐ろしいデザインです!

    したがって、構成をグローバルに含めて、たとえば、関数内で参照できる変数内に格納するか、require()を使用します。 またはinclude() 関数のすべての実行に構成が実際に含まれていることを確認します。



    1. mysql_real_escape_stringを呼び出すたびに、データベースにもう一度アクセスする必要がありますか?

    2. OracleSQLでデュアルから10,000の一意のIDのリストを選択する方法

    3. Yii CDbConnectionがDB接続を開くことができませんでした:googlecloudsqlでドライバーが見つかりませんでした

    4. パンダの2つの列のいずれかでテーブルをマージします