2016-03-29 2 views
0

, когда я загрузить базу данных, данные одного, это, кажется, как массив, , но я не знаю, как получить значение в label_values ​​Получить странное значение массива

print_r ($ результатов):

Array ([custom_params] => custom_limit="0"|input_label="{\"label_values\":[\"\u9650\u5916\u5e36\",\"\u9650\u5167\u7528\",\"\u9650\u6642\u5546\u54c1\",\"\u514d\u9810\u7d04\",\"\u5373\u8cb7\u5373\u7528\",\"\u672c\u9031\u5f37\u6a94\",\"\u611b\u5fc3\u516c\u76ca\"]}"|repeat_label=""|) 

json_encode ($ результаты):

{"custom_params":"custom_limit=\"0\"|input_label=\"{\\\"label_values\\\":[\\\"\\u9650\\u5916\\u5e36\\\",\\\"\\u9650\\u5167\\u7528\\\",\\\"\\u9650\\u6642\\u5546\\u54c1\\\",\\\"\\u514d\\u9810\\u7d04\\\",\\\"\\u5373\\u8cb7\\u5373\\u7528\\\",\\\"\\u672c\\u9031\\u5f37\\u6a94\\\",\\\"\\u611b\\u5fc3\\u516c\\u76ca\\\"]}\"|repeat_label=\"\"|"} 

пытался Еогеасп первый lavel:

foreach($results as $k=>$v){ 
    echo $v; 
} 

получить:

custom_limit="0"|input_label="{\"label_values\":[\"\u9650\u5916\u5e36\",\"\u9650\u5167\u7528\",\"\u9650\u6642\u5546\u54c1\",\"\u514d\u9810\u7d04\",\"\u5373\u8cb7\u5373\u7528\",\"\u672c\u9031\u5f37\u6a94\",\"\u611b\u5fc3\u516c\u76ca\"]}"|repeat_label=""| 

, но не знаю, чтобы получить значение, то ...

Любая помощь очень ценится!

+0

у вас есть только один элемент в массиве изначально то, что еще вы хотите? –

+0

Как вы заполняете переменную '$ result'? Можем ли мы увидеть этот код? – Henders

ответ

1

$results['custom_params'] - это список из key=value, разделенный на трубопровод, поэтому вам нужно разделить его. И значение input_label есть JSON, который можно разобрать с json_decode.

Кроме того, вам необходимо удалить обратную косую черту перед кавычками в значении.

$custom_params = explode('|', $results['custom_params']); 
foreach ($custom_params as $param) { 
    if (preg_match('/^input_label="(.*)"$/', $param, $match)) { 
     $input_label = json_decode(str_replace('\"', '"', $match[1]), true); 

     $label_values = $input_label['label_values']; 
     break; 
    } 
} 

DEMO

+0

, спасибо за ответ, но при попытке экспортировать значения, echo $ input_label или echo $ label_values, ничего не произойдет – MotoTony

+0

Обратные косые черты перед кавычками вызвали проблему, я исправил ее. См. Демонстрацию. – Barmar

+0

большое спасибо! Barmar – MotoTony

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