【问题标题】:How to search a text or number in Multidimensional array如何在多维数组中搜索文本或数字
【发布时间】:2015-10-28 13:25:47
【问题描述】:

我正在尝试创建一个条件,其中条件应该检查​​多维数组中是否存在位置或邮政编码,如果满足任何一个条件,它应该返回 true 或 false

这是我尝试使用数组的代码

$cars = array("locationabc","locationdef","locationdghi");
$locality = "locationabc";
if ( in_array($locality, $cars) ) {
    echo "you can proceed service to your location";
    }else {
            echo "sorry we don't provide service to your location";
        }

但是如何在多维数组中做到这一点,我不知道下面的条件是对还是错

$cars = array
  (
  array("locationabc",500001),
  array("locationdef",500002),
  array("locationdghi",500003)
  );
$locality = "locationabc";

  if ( array_key_exists($locality, $cars) ) {
                echo "you can proceed service to your location";
            }else {
            echo "sorry we don't provide service to your location";
        }

【问题讨论】:

    标签: php arrays multidimensional-array


    【解决方案1】:

    我假设您有按照您展示的示例的多维数组。你可以这样做

    $cars = array
    (
      array("locationabc",500001),
      array("locationdef",500002),
      array("locationdghi",500003)
    );
    $locality = "locationabc";
    
    foreach($cars as $car){
        if ( in_array($locality, $car) ) {
            $msg = "you can proceed service to your location";
            break;
        }else {
            $msg = "sorry we don't provide service to your location";
        }
    }
    echo $msg;
    

    【讨论】:

    • 这是您代码的输出“您可以继续为您的位置提供服务,或者我们不为您的位置提供服务,或者我们不为您的位置提供服务”它重复 3 次
    • 我希望在一个时间 locationabc 或 500001 检查任何一个条件
    【解决方案2】:

    您可以使用以下示例来检查值是否存在-

    $flag = 0;
      foreach($cars as $c)
      {
          if(in_array($locality,$c))
          {
              $flag = 1;
              break;
          }
    
      }
    
    if($flag == 1)
        echo 'value exist';
    else
        echo 'value does not exist';
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-03
      相关资源
      最近更新 更多