2016-07-13 2 views
-1

Я следующий массив с помощьюПреобразовать массив ассоциативного

print_r($data); 

в результатах РНР

$data=Array(
[0] => stdClass Object 
    (
     [name] => location 
     [value] =>lko 
    ) 

[1] => stdClass Object 
    (
     [name] => street_number 
     [value] => 425 
    ) 
    ) 

Теперь я хочу, чтобы достичь следующего массива формата, Как я могу достичь followin с использованием лучших сложностей посильных

Array(
[location]=>lko 
[street_number]=>425) 

Я хочу идеальное решение по сложности,

+1

RTFM? http://php.net/json_decode, в частности, второй вариант ... –

ответ

2

Вы можете попробовать следующее

foreach ($data as $val) { 

    $ar[$val['name']]=$val['value']; 
} 
print_r($ar); 

Это будет конвертировать ваш массив в формат, что вам необходимо

0

Не требуется serializeArray. Используйте простой serialize:

var data = $("#form").serialize(); 

А на стороне сервера проверке с помощью:

print_r($_POST); 

Он должен иметь все необходимые значения в виде массива ключа-значения.

+0

Уже пробовал так, результат: «location = lko & street_number = 425» – Lucky

+0

Пожалуйста, отредактируйте ваш вопрос и добавьте соответствующий код js и php-часть. 'serialize' является стандартным методом и отлично работает. –

+0

@ Lucky Это формат, который вы хотите. Если '.serialize' не работает для вас, то вы делаете что-то еще неправильно. Вы не ставили бы это значение под другой ключ, то есть данные, которые вы передаете в вызов ajax. –

Смежные вопросы