echo $title;
$title = 'Jelly';
私は私のページの一部に、私は$のタイトルを宣言し、その前にヘッダファイルを持っているので、ページは、単純な$ _GET [」を使用して別のセクションを持っているのに私だけ頼みますタブ '] ===' blahblahblah ';
しかし、私は、ヘッダファイルと呼ばれてきた後に出力$タイトル場合は、これらの$ _GET変数は...
echo $title;
$title = 'Jelly';
私は私のページの一部に、私は$のタイトルを宣言し、その前にヘッダファイルを持っているので、ページは、単純な$ _GET [」を使用して別のセクションを持っているのに私だけ頼みますタブ '] ===' blahblahblah ';
しかし、私は、ヘッダファイルと呼ばれてきた後に出力$タイトル場合は、これらの$ _GET変数は...
しかし、私は、ヘッダファイルと呼ばれてきた後に、これらの$ _GET変数が宣言されている...
あなたは間違ってやっていることだ
。
すべての必要なデータを取得した後でのみ、ヘッダーを呼び出します。
これには適切なサイトアーキテクチャが必要です。 (あなたのヘッダを含む)
この設定では、このような問題に遭遇することはありません。
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>My site. <?=$pagetitle?></title>
</head>
<body>
<div id="page">
<? include $tpl ?>
</div>
</body>
</html>
とlinks.tpl.php
は、実際のページのテンプレートです:main.tpl.php
はあなたのメインのサイトテンプレートです
典型的なスクリプトは、ヘッダー、フッター、メニューなどのように、共通部分を含め、
<?
//include our settings, connect to database etc.
include dirname($_SERVER['DOCUMENT_ROOT']).'/cfg/settings.php';
//getting required data
$DATA=dbgetarr("SELECT * FROM links");
// setting title for using in the main template
$pagetitle = "Links to friend sites";
//etc
//set page template filename
$tpl = "links.tpl.php";
//and then finally call a template:
include "main.tpl.php";
?>
のように見えることがあります。
<h2><?=$pagetitle?></h2>
<ul>
<? foreach($DATA as $row): ?>
<li><a href="<?=$row['link']?>" target="_blank"><?=$row['name']?></a></li>
<? endforeach ?>
<ul>
番号を宣言されている$のタイトルは、事前に何か他のものに設定するか、しない限りされていない限り、それは出力何もなりますPHPのregister_globals設定が有効になっています(ph < 5.3.0)。 "title"はリクエストパラメータになります。
あなたがそれをすることが許されているかどうかを尋ねるなら、絶対に。変数は「Jelly」に変更されますが、その特定の値は上記のようにエコーされません。
宣言する前に$ titleを使用しないでください(PHPは宣言されていない変数の使用について通知し、$ titleの値はnullになるため何も出力しません)。 $ _GET変数は環境(Webサーバー)によって設定され、値を代入するべきではありません。$ _GET変数で受け取った値を読み取るだけです。
"缶"の意味によって異なりますか?あなたはエラーを起こさないので、その意味ではあなたは "できます"。しかし、それは "ゼリー"をエコーしません.... –
それは宣言していない。これは、以前に使用されていない(したがって宣言されていない)変数からの最初の読み込みであり、後でそれを値に設定します。 – tdammers