たとえば、次のパラメータがあります。
max_image_width=100,max_image_height=200,image_proportion=1.75
次の配列を取得したい:
array('max_image_width'=>100,'max_image_height'=>200,'image_proportion'=175);
$str = 'max_image_width=100,max_image_height=200,image_proportion=1.75';
$cfg = parse_ini_string(
str_replace(',', "\n", $str)
);
print_r($cfg);
5.4
$a=[];foreach(explode(',',$i)as$b){$a[explode('=',$b)[0]]=explode('=',$b)[1];}
$output = array();
parse_str(str_replace(',', '&', 'max_image_width=100,max_image_height=200,image_proportion=1.75'), $output);
たとえば、preg_match_allを使用します。
<?php
$t = 'max_image_width=100,max_image_height=200,image_proportion=1.75';
preg_match_all('!([^=]+)=([^,]+)!', $t, $m);
$x = array_combine($m[1], $m[2]);
var_export($x);
プリント
array (
'max_image_width' => '100',
',max_image_height' => '200',
',image_proportion' => '1.75',
)
(正規表現なしでそれを行う方法は他にもたくさんありますが;-))