1

我有一个变量 $RepCom,如果它是 set,我希望它是输入 RepCom 的值。

我正在尝试找出正确的方法来完成这项工作......

$x_RepCom = '<input name="RepCom" type="text" value="'. if(isset($RepCom)){echo $RepCom; }.'">';

只是转储变量很好,但如果没有设置,我会得到一个未定义的错误。

 $x_RepCom = '<input name="RepCom" type="text" value="'.$RepCom.'">';

那么如何将 $RepCom 的 if isset 放入输入的值中呢?

我试过...

$x_RepCom = '<input name="RepCom" type="text" value="<?php if(isset($RepCom)){echo $RepCom; }?>">';

但这只是将字符串转储<?php if(isset($RepCom)){echo $RepCom; }?>到值中。

我错过了什么?

4

3 回答 3

3

你有正确的想法,你只是有错误的实施。

$RepComPrint = (isset($RepCom)) ? $RepCom : '';
$x_RepCom = '<input name="RepCom" type="text" value="'.$RepComPrint .'">';
于 2012-05-09T15:48:54.660 回答
2

您可能希望将值作为变量:

if(!isset($RepCom))
    $RepCom='';

$x_RepCom = '<input name="RepCom" type="text" value="'.$RepCom.'">';

现在如果没有设置,它将被赋予一个空字符串的值,这将防止未定义的错误。

于 2012-05-09T15:50:36.607 回答
1

你是函数式程序员吗?您编写的代码 ( $x_RepCom = '<input name="RepCom" type="text" value="<?php if(isset($RepCom)){echo $RepCom; }?>">';) 让我想起了如何在 Scheme 或 Haskell 中实现它。

PHP 的重要之处在于,像if它这样的控制结构不只是返回一个值;您不能将其任意插入代码中。

您必须在 PHP 中执行此操作的方式类似于

$x_RepCom = '<input name="RepCom" type="text" value="';
if(isset($RepCom)) { $x_RepCom .= $RepCom; }
$x_RepCom .= '>';

(为了清楚起见,写了很长的路)

于 2012-05-09T15:55:52.720 回答