【问题标题】:check if a value exist in an array php do while loop [duplicate]检查数组中是否存在值 php do while loop [重复]
【发布时间】:2016-08-30 08:54:35
【问题描述】:

我想在将一个值放入数组后检查do while循环中是否存在。

<?php
$query_tags = mysqli_query($link,"SELECT * FROM units ");
//getting values from db

$list = array();
while ($row = mysqli_fetch_assoc($query_tags)) {
   $list[] =  $row['code'];
}

$mylist = '[' . implode(',', $list) . ']'

echo $mylist;
//result will look like this: [kis,his,mat,geo]
?>

现在我想检查上面的列表中是否存在单词 kis

我试过了

<?php
if (array_key_exists("kis",$list))
  {
  echo "Key exists!";
  }
else
  {
  echo "Key does not exist!";
  }

  ?>

不起作用。有什么帮助吗?或任何其他更好的方法

【问题讨论】:

  • 好吧,您打印出数组的值,然后检查是否存在键。因此,您可能想使用 in_array() 检查您的数组中是否有该值
  • @Rizier123 这个问题可能有相同的答案,因为它是重复的,但我不认为它与那个问题重复
  • 你问如何检查一个值是否存在于数组中,而副本准确地告诉你如何做到这一点。
  • @Rizier123 你在哪里可以快速将其标记为重复,现在我无法为我的问题找到更多解决方案。

标签: php arrays


【解决方案1】:

您必须将您的条件更改为if (in_array("kis",$list)) 因为以前您是通过键而不是值在数组中搜索。

【讨论】:

    【解决方案2】:

    在您的数组中,“kis”是value 而不是key。你的键是 0,1,2,3

    你应该使用in_array PHP 函数。它将检查值。

    if (in_array("kis",$list)){
      echo "Value exists!";
    }
    else  {
      echo "Value does not exist!";
    }
    

    【讨论】:

    • ravi 我相信您将不得不将$list,["kis"] 更改为"kis",$list,因为我带来了错误。
    • @krushiovida:哦!我的错。感谢您指出。
    猜你喜欢
    • 1970-01-01
    • 2011-12-14
    • 2017-11-24
    • 2016-06-22
    • 1970-01-01
    • 1970-01-01
    • 2018-04-23
    • 2016-03-01
    • 1970-01-01
    相关资源
    最近更新 更多