我想將一個字符串與數組進行比較,以查看字符串是否存在於數組中,如果是這樣,則echo'in array'。我只能保持echo的效果,因爲我想用數組中的最後一個條目工作。檢查數組中是否存在值
foreach($array as $key => $value) {
foreach($entries as $entry) {
if($entry == $value) echo 'in array 1';
}
if (in_array($value, $entries)) {
echo 'in array 2';
}
if(isset($entries[$value])) {
echo 'in array 3';
}
}
的回聲「在陣列1」和「數組2」的工作只在無論$項數組中的最後一個條目,和回聲「在陣列3」不工作的。
其可能是一些愚蠢的,但我沒有看到它...
編輯:
這裏是陣列的一些例子
$entries =
array(5) {
[0]=>
string(14) "example text 1"
[1]=>
string(14) "example text 2"
[2]=>
string(14) "example text 3"
[3]=>
string(14) "example text 4"
[4]=>
string(14) "example text 5"
}
$array =
array(5) {
[0]=>
string(14) "example text 1"
[1]=>
string(14) "example text 2"
[2]=>
string(14) "example text 3"
[3]=>
string(14) "example text 7"
[4]=>
string(14) "example text 8"
}
所以現在當我做
foreach($array as $key => $value)
$值應該有我的$數組的值,我需要比較每一個thos e值來查看它們是否出現在我的$ entries數組中。如果是這樣的ID喜歡「陣」呼應
編輯2:
,如果它使正在被文件(),因爲信息是從日誌來創建我的$條目陣列的差異。每次添加一個新文件時,它都會被記錄下來,然後我想將傳入文件與日誌進行比較,確定它們是否已經被添加,如果沒有,添加它們。
我很困惑,你說你要比較一個字符串數組,但它看起來像你比較數組一個數組..你能提供一些樣本數據在所有這些數組/字符串,你得到了什麼,你期待什麼? – gingerCodeNinja
well $ value是一個存儲在數組中的字符串,通過循環$ array獲取每個$ value,然後將$ value與$ entries中的每個值進行比較($ entry) – cwal
,這樣您的字符串的每個字符都是$ value?像'貓'是陣列('c','a','t');'?還是你的意思是字符串中的每個單詞都是$ value?像'貓坐在墊子上'是'數組'('貓','坐','上',''','墊子');'?什麼是$條目? – gingerCodeNinja