2

我的数组值之一包含

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

.

我想在数组中搜索值的键,其中数组值中包含文本“产品详细信息”,并包裹着一些 html 数据。我写了以下代码,但它不起作用。有人可以帮忙吗?

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

3 回答 3

2

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

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

foreach ($all_data_array as $key => $value) {
  if (strpos($value, 'Product Details') !== false) {
    $new_key = $key;
    break;
  }
}
于 2012-08-10T06:39:43.203 回答
1

array_filter让您指定一个自定义函数来进行搜索。在您的情况下,一个简单的函数用于strpos()检查您的搜索字符串是否存在:

于 2012-08-10T06:38:17.230 回答
0

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

于 2012-08-10T07:23:54.763 回答