1

PHP には、次のようなクラス メンバーがあります。

function hidden($defaultSort=""){
    $defaultSort = 'a';?>
    <input type="hidden" name="sort" id="<?php print $this->id;?>sort" value='<?php print $defaultSort; ?>' />
    <?php print $defaultSort;
}

この関数を呼び出すと、Firefox で次のソースが取得されます

<input type="hidden" value="&lt;br /&gt;&lt;b&gt;Notice&lt;/b&gt;:  Undefined variable: defaultSort in &lt;b&gt;/www/sptdev/htdocs/includes/v7/sptSearchBox.php&lt;/b&gt; on line &lt;b&gt;24&lt;/b&gt;&lt;br /&gt;" id="searchFormSearchsort" name="sort"/>a

Undefined variable エラーが発生する理由はありますか?

詳細: エラーが発生している行 24 は、非表示の入力がある行です。

これがIE8で期待どおりに機能することを発見しました。

<input type="hidden" name="sort" id="searchFormSearchsort" value='a' />a

PHPはサーバー側であり、これはブラウザとは何の関係もないはずなので、これはあまり意味がありません。

更新- 問題は、Firefox で [View Selection Source] を強調表示して選択していたことにあるようです。「ページのソースを表示」を使用すると、問題なく表示されます。

4

2 に答える 2

0

試す:

function hidden($defaultSort=""){
    $defaultSort = 'a';
    echo '<input type="hidden" name="sort" id="' , $this->id , 'sort" value="' , $defaultSort ,'"/>';
  print $defaultSort;
}

編集: 私はこのコードを試しましたが、正常に動作します。そのままコピーして貼り付けて、うまくいくかどうかを確認してください。

于 2012-05-16T14:41:18.983 に答える