【问题标题】:Convert array to conditional php [duplicate]将数组转换为条件php [重复]
【发布时间】:2018-05-21 11:15:19
【问题描述】:

我有一个数组,我想把它转换成一个if条件。

$array = ['check 1', 'check 2', 'check 3'];

我希望最终结果是这样的:

if ($var == 'check 1' || $var == 'check 2' || $var == 'check 3') {
    // Do here.
}

我没有任何灵感,我已经搜索了convert array to if condition,但我找不到任何东西。

如何将数组转换为 if 条件?

【问题讨论】:

  • in_array 可能对你有用
  • 但是,如果我使用in_array,如何检查多个值
  • 循环数组。检查循环当前迭代的值。
  • if (in_array($var, $array) || in_array($var1, $array)){ //do something }
  • array 在哪里?我在您发布的代码中看不到任何array

标签: php arrays


【解决方案1】:

而不是多个|| (OR) 条件使用in_array()

if (in_array($var, $array)) {
    // do here
}

输出:-https://eval.in/914346

如果你想根据数组检查多个变量,那么这样做:-

if (in_array($var, $array) || in_array($var1, $array)){ 
  //do here
}

输出:- https://eval.in/914351

注意:-如果您能更清楚地了解所有变量以及所有这些变量所需的条件,您将得到更准确的答案

【讨论】:

    【解决方案2】:
    <?php
    
    $array = array( "mango", "grapes","apple");
    //let you have to find apple
    
    if(in_array('masngo',$array) || in_array('mango',$array)){
        echo "FIND";
        //OR WHATEVER YOU WANT TO DO
    }else{
        echo "Not Found";
    }
    

    尝试运行HERE

    【讨论】:

    • 这不是一个通用的解决方案。
    【解决方案3】:

    遍历数组并像这样检查in_array

    $array = ( 'check 1', 'check 2', 'check 3' );
    
        foreach($array as $k => $v)
        {
            $flag = "false";
            if(in_array($v,$array))
            {
                $flag = "true";
            }
        }
    

    所以从上面的代码来看,数组中是否存在任何值,变量 $flag 将具有字符串值“true”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-15
      • 1970-01-01
      • 1970-01-01
      • 2013-10-16
      • 2018-03-18
      • 2018-04-01
      相关资源
      最近更新 更多