gpt4 book ai didi

php - array_search 没有找到所有的值

转载 作者:行者123 更新时间:2023-12-03 19:07:51 26 4
gpt4 key购买 nike

Array
(
[0] => 159042564114859_722842697734840
[1] => 180466813056_10152147419628057
[2] => 201613513237343_622449081153782
)


$post_ids = array('201613513237343_622449081153782', '180466813056_10152147419628057', '159042564114859_722842697734840');

foreach($posts->data as $post)
{
if(array_search( $post->id, $post_ids ))
{
print '<p>FOUND ' . $post->id . '<p>';

}
}

输出:

FOUND 159042564114859_722842697734840

FOUND 180466813056_10152147419628057

由于某种原因,它没有检测到数组中的第三项,索引为 3,值为 201613513237343_622449081153782

这个输出:

foreach($posts->data as $post)
{
print '<p>post->id: ' . $post->id . '</p>';
}

post->id: 159042564114859_722842697734840

post->id: 180466813056_10152147419628057

post->id: 201613513237343_622449081153782

所以我知道数据在那里,我对 array_search 函数做错了什么?

最佳答案

它不输出第一个 post id,因为array_search 返回index,即0

将支票更改为:

if (array_search($post->id, $post_ids) !== false) {

显式false比较。


0 == false; // true
0 === false; // false

PHP 的参数和返回值不是很好,但是大多数搜索 函数都使用某种“未找到”值。 -1falsenull 是用于此目的的常用值。

关于php - array_search 没有找到所有的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21264744/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com