Получение значений из seralized массива - PullRequest
0 голосов
/ 09 апреля 2020

Я использую JQuery с вызовом Ajax для файла PHP, который читает значения из MySQL БД. (Wordpress) Когда значения возвращаются к jQuery, и я выводю их на консоль, это пример того, что я получаю: a: 1: {i: 0; i: 90;}

Как получить доступ к значениям 90 из этого выделенного массива, используя jQuery, где 90 будет другим значением но всегда в одной и той же позиции?

$prod = $_POST['item'];
//$mod_prod = substr($prod, 0, strpos($prod, "|"));

//query to get data from the table
$query_Product = sprintf("select meta_value from wp_postmeta Where post_id = '".$prod."' and meta_key = '_upsell_ids'");

//execute query
$result_Product = $mysqli_Product->query($query_Product);

//loop through the returned data
$data_ListRD = array();
foreach ($result_Product as $row) {
    $data_ListRD[] = $row;

}


//free memory associated with result
$result_Product->close();

//close connection
$mysqli_Product->close();

//print_r(json_encode($data_ListRD));

//now print the data
print json_encode($data_ListRD);

$ data_ListRD Я думаю, что это массив, как мне десериализовать это?

1 Ответ

0 голосов
/ 09 апреля 2020

Вам необходимо использовать функцию $ .parse JSON или JSON .parse, если вы не используете jQuery. Но так как вы получаете данные типа «{a: 1, b: {i: 0, i: 90}}» (в вашем примере есть опечатки), вы уже получаете объект, поэтому вам не нужно разбери его, так как это уже не JSON. Например, если вы запишете в журнал свой результат, он будет выглядеть так:

let data = {a:1, b:{i:0,i:90}} //data that comes from AJAX (as an example).
  console.log(data);

//Result
    a: 1
    b: {i: 90}
    __proto__: Object
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...