0

include()を介してインクルードしているファイルに変数を渡す方法があるかどうか疑問に思っていますか?

これを試しましたが、エラーが発生しました:

include("header_alt.php?img=hey");

それを行う方法はありますか?

ありがとう!

4

2 に答える 2

2

最初のファイルで変数を定義するだけです; たとえば、temp.php

<?php
$my_var = 10;

include 'temp-2.php';

die;
?>

そしてそれを2番目のファイルで使用します; temp-2.php

<?php

var_dump($my_var);

?>

そしてそれはうまくいくはずです:私はこの出力を取得しています:からtemp-2.php

int 10


クエリ文字列構文は、同じサーバー上にあるファイルを含める場合ではなく?img=hey、離れたサーバーからデータを要求する場合(ブラウザを使用してWebサイトを閲覧する場合など)に使用されます。

于 2009-09-09T18:51:05.303 に答える
1

Smartyは、この種のものに非常に優れたメカニズムを提供します。さらに、Smartyを使用すると、より優れたphpアプリケーションが実現します。

http://www.smarty.net/manual/en/language.function.include.php

変数は、属性として含まれているテンプレートに渡すことができます。インクルードされたテンプレートに明示的に渡された変数は、インクルードされたファイルのスコープ内でのみ使用できます。同じ名前の場合、属性変数は現在のテンプレート変数をオーバーライドします。

割り当てられたすべての変数値は、含まれているテンプレートのスコープが残された後に復元されます。これは、インクルードテンプレート内のインクルードテンプレートのすべての変数を使用できることを意味します。ただし、インクルードされたテンプレート内の変数への変更は、{include}ステートメントの後のインクルードテンプレート内には表示されません。

于 2009-09-09T18:51:22.417 に答える