-1

辞書の目的で使用される2 つのliタグを組み合わせています。PHP

<li <?php echo "title='".$this->text['tt-statistics']."'" ;?> ><a <?php if($location == "analytics") {echo 'id="current"';  } ?> href="analytics-dash.php"><?php echo $this->text['statistics'];?></a></li>         
<li <?php echo "title='".$this->text['tt-logins']."'" ;?>  ><a <?php if($location == "settings") {echo 'id="current"';  } ?> href="settings-producer.php"><?php echo $this->text['manage-logins'];?></a></li>

次のように(最初の最後に)header()直後にコマンドを配置すると:$this->text['statistics'];li

<li <?php echo "title='".$this->text['tt-statistics']."'" ;?> ><a <?php if($location == "analytics") {echo 'id="current"';  } ?> href="analytics-dash.php"><?php echo $this->text['statistics']; header('Location: http://www.example.com/');?></a></li>
<li <?php echo "title='".$this->text['tt-logins']."'" ;?>  ><a <?php if($location == "settings") {echo 'id="current"';  } ?> href="settings-producer.php"><?php echo $this->text['manage-logins'];?></a></li>

ヘッダー コマンドは正常に動作します。

しかし、次のように、2番目の開始時に正しく配置すると、次liのようになります。

<li <?php echo "title='".$this->text['tt-statistics']."'" ;?> ><a <?php if($location == "analytics") {echo 'id="current"';  } ?> href="analytics-dash.php"><?php echo $this->text['statistics'];?></a></li>
<li <?php header('Location: http://www.example.com/'); echo "title='".$this->text['tt-logins']."'" ;?>  ><a <?php if($location == "settings") {echo 'id="current"';  } ?> href="settings-producer.php"><?php echo $this->text['manage-logins'];?></a></li>

うまくいきません。

ヘッダーは「実際の出力が送信される前に呼び出す必要がある」ことを知っています。header()しかし、これら2つの場所の間で混乱する出力を印刷している理由や場所がわかりません。

4

2 に答える 2

0

あなたの例の最初の文字は、実際にはすでに送信されている出力です。

于 2012-05-30T10:03:28.803 に答える
0

<?phpタグの前に出力が開始されます。

于 2012-05-30T10:03:36.607 に答える