【问题标题】:php concatenate in loop [duplicate]php在循环中连接[重复]
【发布时间】:2012-09-03 05:08:05
【问题描述】:

我的代码上有这些

$from_m = 1;
$to_m = 6;

while( $from_m <= $to_m )
{
    if($from_m == 1)
        $m = "January";

    if($from_m == 2)
        $m = "February";

    if($from_m == 3)
        $m = "March";


    $add = "OR month = '$m' ";

    $from_m++;
}

结果

$add = "OR month = 'March' ";

我想要的是……

 $add = "OR month = 'January' OR month = 'February' OR month = 'March' ";

我该怎么做呢?

有什么帮助吗?

【问题讨论】:

  • $add .= "OR month = ... "; 而不是 $add = 。但这需要在条件完成后修剪掉第一个“OR”,最好使用一组条件:$conditions = array("month = 'January'", "month = 'February'", ); $add = implode(" OR ", $conditions);

标签: php loops concatenation


【解决方案1】:

替换这个

$add = "OR month = '$m' ";

$add .= "OR month = '$m' ";

【讨论】:

  • 是的!它有效,在我问这个问题之前,我尝试了 $add。 = ...我得到了一个错误。我错过了一点。感谢@vinay 的帮助
【解决方案2】:
$from_m = 1;
$to_m = 6;

while( $from_m <= $to_m )
{
    if($from_m == 1)
        $m = "January";

    if($from_m == 2)
        $m = "February";

    if($from_m == 3)
        $m = "March";


    $add .= "OR month = '$m' ";

    $from_m++;
}

【讨论】:

    【解决方案3】:

    使用:

    $add .= "OR month = '$m' ";
    

    而不是

    $add = "OR month = '$m' ";
    

    【讨论】:

    • @metzelder 检查日期,我在没有回复时写了这个答案。
    猜你喜欢
    • 1970-01-01
    • 2014-07-14
    • 1970-01-01
    • 1970-01-01
    • 2017-01-20
    • 1970-01-01
    • 2013-10-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多