преобразование строки, содержащей ключи и значения в массив - PullRequest
6 голосов
/ 27 октября 2010

кто-нибудь знает изящный способ превращения этой строки (список не определен ... "ключи" и "значения" могут быть произвольно добавлены)

business_type,cafe|business_type_plural,cafes|sample_tag,couch|business_name,couch cafe

в этот массив?

array(
     [business_type]=>'cafe'
     [business_type_plural] => 'cafes'
     [sample_tag]=>'couch'
     [business_name]=>'couch cafe'
     )

1 Ответ

18 голосов
/ 27 октября 2010

Взрывай!

$string = "business_type,cafe|business_type_plural,cafes|sample_tag,couch|business_name,couch cafe";

$finalArray = array();

$asArr = explode( '|', $string );

foreach( $asArr as $val ){
  $tmp = explode( ',', $val );
  $finalArray[ $tmp[0] ] = $tmp[1];
}

print_r( $finalArray );

Будет выведено следующее:

Array
(
    [business_type] => cafe
    [business_type_plural] => cafes
    [sample_tag] => couch
    [business_name] => couch cafe
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...