2016-08-30 17 views
0

配列に入れた後にdo whileループに値が存在するかどうかをチェックしたい。ワードKISは配列に値が存在するかどうかを調べるwhileループ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] 
?> 

は今、私は動作しません

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

    ?> 

を試してみましたが、確認したいです。これについての助け?または他のよりよいアプローチ

+1

あなたの配列の値を印刷して、キーが存在するかどうかを確認しました。だからあなたはおそらくあなたの配列に 'in_array()'という値を持っているかどうかチェックしたいと思うかもしれません – Rizier123

+0

@ Rizier123質問には同じ回答があるかもしれませんが重複しているとは思いませんか? –

+0

あなたは配列に値が存在するかどうかを確認することができます。複製は、その方法を正確に示しています。 – Rizier123

答えて

1

以前は値ではなくキーで配列を検索していたため、条件をif (in_array("kis",$list)) に変更する必要があります。

1

ご使用のアレイでは、「kis」はvalueではなく、keyです。あなたのキーは0,1,2,3

です。in_array PHPの機能を使用する必要があります。それは価値をチェックするでしょう。

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

ravi私はエラーが起きているので、 '$ list、[" kis "]'を '' kis "、$ list'に変更しなければならないと思います。 –

+0

@krushiovida:ohh !!私の間違い。それを指摘してくれてありがとう。 –

関連する問題