0

ステートメント内で変数を設定しようとしていますが、何度もforeach()死んでしまいます。

私がこれをすれば、すべてがうまくいきます。

foreach($array as $key => $value)
    {
         echo '<tr>';
            echo '<td><a href="http://mgoode.com/index.php?option=com_mls&view=mls&mlsnum=' . $value['1'] . '">' . $value['1'] . '</a></td>';
         echo '</tr>';
    }

しかし、私がこれを行うと、動作したくありません。

foreach($array as $key => $value)
    {
        $mls = echo '' . $value['1'] . '';
         echo '<tr>';
            echo '<td><a href="http://mgoode.com/index.php?option=com_mls&view=mls&mlsnum=' $mls '">' $mls '</a></td>';
         echo '</tr>';
    }

構文に関しては、これらのステートメントにどのような違いがあるのか​​ わかりません。私も試してみましたが$mls = $value['1'];、それもうまくいきたくありませんでした。

4

3 に答える 3

2

確かに、2 番目のケースについて不平を言う構文エラーが発生しましたよね? 「死に続ける」と言うなら、何かが死んだときに何が起こるかを正確に教えてください。さらに、構文エラーを読み、その内容を検討する必要があります。エラーは説明的であるため、何が問題なのかを理解できます。

2 番目のケースでは、文字列を.演算子で連結していません。

echo '<td><a href="http://mgoode.com/index.php?option=com_mls&view=mls&mlsnum=' $mls '">' $mls '</a></td>';

する必要があります

echo '<td><a href="http://mgoode.com/index.php?option=com_mls&view=mls&mlsnum=' . $mls . '">' . $mls . '</a></td>';
于 2012-11-30T15:35:12.000 に答える
2
 $mls = echo '' . $value['1'] . '';

する必要があります

$mls =   $value['1'] ;
echo $mls;

  echo '<td><a href="http://mgoode.com/index.php?option=com_mls&view=mls&mlsnum=' $mls '">' $mls '</a></td>'

する必要があります

echo '<td><a href="http://mgoode.com/index.php?option=com_mls&view=mls&mlsnum=' . $mls . '">' . $mls . '</a></td>';
于 2012-11-30T15:35:31.673 に答える
0

2 番目のコード ブロックは次のようになります。

foreach($array as $key => $value)
{
    $mls = (string) $value['1'];
    echo '<tr>';
    echo '<td><a href="http://mgoode.com/index.php?option=com_mls&amp;view=mls&mlsnumamp;=' , $mls , '">'  , $mls , '</a></td>';
    echo '</tr>';
}
  • 入力$var = echo "something"すると、その変数に値が割り当てられません。代わりに、その文字列を出力しています -戻り値echoはありません。
  • 空の文字列を追加したり先頭に追加したりせずに、変数を文字列に型キャストできます。
  • を使用すると、オーバーヘッドを少し減らし,て、複数の文字列を次々にエコーできます。
  • アンパサンドが属性の値に含まれていても、アンパサンドには HTML エンティティを使用する必要があります。
  • (最後に) 実際には変数を 3 番目の に連結していませんecho
于 2012-11-30T15:43:40.343 に答える