문제

$ _post가하는 형식으로 문자열을 어떻게 배열 할 수 있습니까?

101=1&2020=2&303=3

(당신이 궁금해하는 경우, jQuery sortable serialize의 결과 ... 나는 SQL 명령문을 실행하여 = 부호의 오른쪽으로 필드를 업데이트하고 싶습니다. 이것은 foreach ($ var as $ key => $ value)를 사용할 수있는 형식으로 넣고 그로부터 SQL 문을 만들 수있는 형식으로 넣고 싶었습니다.

나는 단지 $ key = 101 및 $ value = 1의 방식으로 이것을 폭발하고 싶습니다.

혼란 스러워요;) 고급에 너무 감사합니다 !!

도움이 되었습니까?

해결책

$input = "101=1&2020=2&303=3";
$output = array();
$exp = explode('&',$input);
foreach($exp as $e){
   $pair = explode("=",$e);
   $output[$pair[0]] = $pair[1];
}

다른 팁

참조 parse_str 기능.

PHP에서 가장 직관적 인 기능 이름은 아니지만 찾고있는 기능은 IS입니다. parse_str (). 다음과 같이 사용할 수 있습니다.

$myArray = array();
parse_str('101=1&2020=2&303=3', $myArray);
print_r($myArray);

빠르고 더러운 솔루션 중 하나 :

<?php
$str = "101=1&2020=2&303=3";
$VAR = array();
foreach(explode('&', $str) AS $pair)
{
    list($key, $value) = each(explode('=', $pair));
    $VAR[$key] = $value;
}
?>
parse_str($query_string, $array_to_hold_values);

&에서 &에서 폭발하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top