搜索数组中的值不起作用

时间:2012-08-10 06:32:20

标签: php arrays

我的一个数组值包含

$all_data_array = Array
(
    [0] => 'General Information'
    [1] => 'Brand'
    [2] => '<p><div style="bolor:#000000;"><li>Product Details</li></div></p>'
)

我想在Array中搜索值的键,其中数组值中包含文本“Product Details”,包含一些html数据。 我写了下面的代码,但它不起作用。有人可以帮忙吗?

<?php echo $new_key = array_search('Product Details', $all_data_array); ?>

3 个答案:

答案 0 :(得分:2)

array_search需要字符串值完全相同。

你可以在你的情况下使用一个循环。

foreach ($all_data_array as $key => $value) {
  if (strpos($value, 'Product Details') !== false) {
    $new_key = $key;
    break;
  }
}

答案 1 :(得分:1)

array_filter允许您指定自定义函数来执行搜索。在您的情况下,使用strpos()检查您的搜索字符串是否存在的简单函数:

答案 2 :(得分:0)

array_search,查找完全匹配,数组$ all_data_array的第三个元素除了“Product Details”之外还有其他字符(这里是html标签);