0

条件に応じてこの PHP テーブル セルに色を書き込もうとしていますが、構文エラーの原因となっているものが見つかりませんか?

コードは次のとおりです。

$table = '<table>
<tr>
 <th> Qty </th>
 <th> Length </th>
 <th> Description </th>
 <th> Color </th>
</tr>
<tr>
 <td></td>
 <td></td>
 <td>'.$gauge. ' &nbsp; ' .$panel.  '</td>'
 if ($sscolor == "None")
   {
         '<td>' .$color. '</td>';    
   }
       else
   {
         '<td>' .$sscolor. '</td>';
   }
   '</td>
</tr> ';
4

4 に答える 4

1

はい。文字列内に if/else 条件を入れることはできません。ただし、三進数を使用できます。

 $str = 'text'.($sscolor == 'None' ? $color : $sscolor).' more text'; // etc

それ以外の場合は、if の前で文字列を終了し、次に使用してさらに連結する必要があります。.=

于 2013-06-14T18:28:34.327 に答える
0

文字列を変数に書き込んだ後、変数に IF 条件を配置することはできません。

if ($sscolor == "None")
   {
         $extra_string = '<td>' .$color. '</td>';    
   }
       else
   {
        $extra_string = '<td>' .$sscolor. '</td>';
   }
$table = '<table>
<tr>
 <th> Qty </th>
 <th> Length </th>
 <th> Description </th>
 <th> Color </th>
</tr>
<tr>
 <td></td>
 <td></td>
 <td>'.$gauge. ' &nbsp; ' .$panel.  '</td>' . $extra_string . '
</tr> ';
于 2013-06-14T18:38:41.140 に答える
-1

if ステートメント内で行を連結する必要があります。

<td>'.$gauge. ' &nbsp; ' .$panel.  '</td>';
 if ($sscolor == "None") {
    $table .= '<td>' .$color. '</td>';    
 } else {
     $table .= '<td>' .$sscolor. '</td>';
 }
$table .= '</td>';  
于 2013-06-14T18:31:14.510 に答える