2

私の配列値の1つに

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

そして、配列内の値のキーを検索したいと思います。配列値には、いくつかのhtmlデータにラップされたテキスト「ProductDetails」が含まれています。次のコードを書きましたが、機能しません。誰かが助けることができますか?

<?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の3番目の要素には、「製品の詳細」以外の文字(ここではhtmlタグ)があります。

于 2012-08-10T07:23:54.763 に答える