어떻게 다른 구분 기호로 문자열을 배열로 분할 할 수 있습니까?어떻게 다른 구분 기호로 문자열을 배열로 분할 할 수 있습니까?
즉이 변환 : '웹 : 427; 프랑스어 : 435'을 여기에 : 마리오로
'web' => 427,
'french' => 435
어떻게 다른 구분 기호로 문자열을 배열로 분할 할 수 있습니까?어떻게 다른 구분 기호로 문자열을 배열로 분할 할 수 있습니까?
즉이 변환 : '웹 : 427; 프랑스어 : 435'을 여기에 : 마리오로
'web' => 427,
'french' => 435
는 정규식을 사용하여 괜찮다면 당신은 당신의 요구에 맞게 this answer을 개정 할 수 있습니다 지적했다. 당신이 정규식하지 않고 그것을 할 싶다면이 시도 : (한 작동됩니다 문자열이 변수 이름 또는 값 내부 :
및 ;
하지 않는 한) 당신의 문자열을하지 않는 한이만큼 작동합니다
$str = 'web:427;French:435';
$array = explode(';',$str); // first explode by semicolon to saparate the variables
$result = array();
foreach($array as $key=>$value){
$temp = explode(':',$value); // explode each variable by colon to get name and value
$array[$temp[0]]= $temp[1];
}
print_r($result);
을 &
또는 =
을 포함합니다.
$str = 'web:427;French:435';
$str = str_replace([';', ':'], ['&', '='], $str);
parse_str($str, $array);
print_r($array);
무엇이 구분 기호로 간주됩니까? –
정규식 또는'strtr'과'parse_str'. – mario