无法从mysql的数组中找到特定元素

时间:2016-05-03 12:25:43

标签: php mysql arrays

所以我有一个小问题。我想将数据从mysql保存到数组中,然后我想搜索该数组中的特定单词并检索是否找到了,我已经尝试了很多方法,但仍然没有成功。它总是检索& #34;未找到单词"。我也尝试过使用array_search和for循环。我错过了什么?

<?php

include("conn.php");
$keyword = "universidade";

$row = array();
$result = mysql_query("SELECT keywords FROM beta_universidades");

while ($data = mysql_fetch_assoc($result)) {
    $row[] = $data;
}

echo "<br><br>";

$chave = in_array($keyword, $row);

if ($chave !== false) {
    echo "word found";
} else {
    echo "word not found";
}

2 个答案:

答案 0 :(得分:1)

在你的情况下$row是一个数组数组,所以你应该尝试类似:

foreach ($row as $myKeywords) {
   $chave = in_array($keyword, $myKeywords['keywords']);

   if ($chave !== false) {
      echo "word found";
      break;
   }
}

答案 1 :(得分:0)

您忘记将密钥'keywords'$data数组一起使用..

while($data = mysql_fetch_assoc($result))
{
    $row[] = $data['keywords']; 
}