【问题标题】:Trying to echo a variable ( $i) into another variable [closed]试图将一个变量($i)回显到另一个变量中[关闭]
【发布时间】:2013-03-09 00:26:16
【问题描述】:

我有一个我一直在制作的特殊表格,它在 wordpress 中使用了一些 cusotm 帖子类型。有一次,我需要将变量 $i 回显到 if 语句中。

顶部有一些验证内容,如下所示,循环中的代码如下。如果你明白我的意思,我几乎一直试图让majorCause1Error成为majorCause $i Error,所以它会像1-13

编辑:对不起,如果我很难看到我在问什么,我发现很难说出我的问题。 所以有一个循环围绕 li 标签运行,它将 $i 回显到名称等中,因此它变为 majorCause1 然后下一个 majorCause2 和下一个 magjorCause3 等等等等

在标签下有一个 if 语句,就像 - if($majorCause1Error !='') { do something } - 我希望它像 if($majorCause1Error !=''){} 然后下一个一个像 if($majorCause2Error !=''){} 然后 if($majorCause3Error !=''){}

这样更有意义吗?

这里是网站的链接http://www.foresightaus.com.au/form/

if(trim($_POST['majorCause1']) === '') {
    $majorCause1Error = "Please enter a major cause.";
    $hasError = true;
} else {
    $majorCause1 = trim($_POST['majorCause1']);
}

if(trim($_POST['majorCause2']) === '') {
    $majorCause2Error = "Please enter a major cause.";
    $hasError = true;
} else {
    $majorCause2 = trim($_POST['majorCause2']);
}

<li class="fill-in">
    <label for="majorCause<?php echo($i); ?>"><?php echo($j); ?>. State one major cause:</label>
    <input type="text" name="majorCause<?php echo($i); ?>" id="majorCause<?php echo($i); ?>" value=""/>
    <?php if($majorCause1Error != '') { ?>
        <span class="error"><?=$majorCause1Error;?></span>
    <?php } ?>  
</li>

【问题讨论】:

  • 那里有问题吗?
  • tl;dr 是此类问题中最明显的操作。请简明扼要地说明您面临的问题。

标签: php wordpress forms for-loop validation


【解决方案1】:

您可能想使用一个数组,但您引用的对象称为variable variable,并且受 PHP 支持!

应该这样做

${"majorCause{$i}Error"}

【讨论】:

  • 谢谢!抱歉,这很难解释我对 PHP 很陌生
  • @ChrisG-Jones 没问题。但就像我说的,你可能想考虑使用数组来做这样的事情,这是更好的编码实践
  • 我明白了,我将研究学习 php 数组。目前我真的不知道如何在数组中做到这一点!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-01-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多