-3

所以,这有效:

<?php
 $value = ($_POST['x']) ? $_POST['x'] : $y[0];
 $output = '<input type="text" name="field1" value="'.$value.'">';
?>

但是如何使它在这种情况下工作:

 <?php
  $output = '<input type="text" name="field1" value="'.$($_POST['x']) ? $_POST['x'] : $y[0];.'">';  
?>
4

3 回答 3

4

只需删除不属于那里的第一美元,将其包裹在大括号中并删除分号:

$output = '<input type="text" name="field1" value="'.(($_POST['x']) ? $_POST['x'] : $y[0]).'">';  
于 2012-12-03T13:38:22.353 回答
1

没有分号:

value="' . ($_POST['x'] ? $_POST['x'] : $y[0]) .'">';

我也得到你想要使用的感觉isset($_POST['x'])

于 2012-12-03T13:38:59.977 回答
0
<input type="type" value="<?php echo $condition ? $variant1 : $variant2 ?>" />
于 2012-12-03T13:45:15.623 回答