2017-02-13 14 views
0
Array 
(
    [hid] => 1 
    [name] => Leonardo Royal Hotel Berlin Alexanderplatz 
    [address] => Otto-Braunstrasse 90, D-10249 Berlin, Germany 
    [price_from] => 5,180 
    [main_image] => 
    [latitude] => 52.5271842 
    [longitude] => 13.4214713,17 
    [images] => Array 
     (
      [0] => LeonardoRoyalHotelBerlinAlexanderplatz-800-600-1.jpg 
      [1] => LeonardoRoyalHotelBerlinAlexanderplatz-800-600-2.jpg 
      [2] => LeonardoRoyalHotelBerlinAlexanderplatz-800-600-3.jpg 
      [3] => LeonardoRoyalHotelBerlinAlexanderplatz-800-600-4.jpg 
     ) 

) 

私はこのような配列を持っています。配列値から "Berlin"のような単語を検索するにはどうすればいいですか?このコードは、あなただけのベルリン知りたいしない場合は、array_walk_recursive使用することができます配列値から単語を検索する

<?php 
$a=array("red folk","green book","blue"); 
$match="book"; 
$searchedValue=""; 
    foreach($a as $key=>$val){ 
    if(strpos($val,$match)) { 
    $searchedValue=$val; 
    } 
    } 
echo $searchedValue; 
+9

[配列内の部分一致の検索]の可能な複製(http://stackoverflow.com/questions/6932438/search-for-partial-value-match-in-an-array) – Scuzzy

+0

@ shefali-prajapatiこの単語が存在する(関数が真または偽を返す)ことを検索したいのですか、その値がベルリンであることをキーにしますか? –

+0

@ApoorvaShah私は真か偽を返したい。 – Shefali

答えて

1

を助け

-1

希望は、いくつかのキーに存在しています。もっと情報が必要な場合はコメントしてください。

$data = 'Your array here'; 
$str = 'Berlin'; 

array_walk_recursive($data, function($item, $key) use ($str) { 
    if (stripos($item, $str) !== false) { 
     echo $key; // or any action you want. 
    } 
}); 

何かが印刷されると、ベルリンがいくつかのキーに存在します。

関連する問題