с помощью PHP print_r выстраивают результат в javascript/jquery

У меня есть простой запрос jquery/ajax к серверу, который возвращает структуру и данные массива. Я задавался вопросом, был ли быстрый путь, которым я могу использовать эту структуру массива и данные с помощью jQuery;

Простой запрос;

var token = $("#token").val();
$.ajax({ 
    type: 'POST', url: './', data: 'token=' + token + '&re=8', cache: false, timeout: 5000,
    success: function(html){ 
        // do something here with the html var 
    }                           
}); 

результат (фактический результат print_r PHP (););

    Array
    (

        [0] => Array
            (
                [username] => Emmalene
                [contents] => 
                              <ul><li class="name">ACTwebDesigns</li><li class="speech">helllllllo</li></ul>
                              <ul><li class="name">ACTwebDesigns</li><li class="speech">sds</li></ul>
                              <ul><li class="name">ACTwebDesigns</li><li class="speech">Sponge</li><li class="speech">dick</li></ul>
                              <ul><li class="name">ACTwebDesigns</li><li class="speech">arghh</li></ul>
            )

    )

Я думал вроде

var demo = Array(html); // and then do something with the demo var

Не уверенный, если это работало бы, это просто пришло на ум.

Любая справка очень ценится.

6
задан Phil Jackson 27 March 2010 в 14:56
поделиться

3 ответа

Используйте JSON . JSON - это облегченный формат обмена данными, который упрощает передачу данных между разными языками программирования.

Используйте json_encode в PHP для кодирования ваших данных:

echo json_encode($array);

А в jQuery определите, что результат будет в формате JSON , и jQuery автоматически проанализирует его как таковой:

$.ajax({ 
    type: 'POST',
    url: './', data: 'token=' + token + '&re=8',
    cache: false,
    timeout: 5000,
    dataType: 'json',
    success: function(obj) { 
        // obj is now the same array as JS object:
        $.each(obj, function(index, row) {
            alert(row.username);
        });            
    }                           
}); 
5
ответ дан 17 December 2019 в 00:07
поделиться

Используйте json_encode () . Он превращает массив в данные JSON, которые можно напрямую использовать в Javascript.

1
ответ дан 17 December 2019 в 00:07
поделиться

Вы можете использовать json_encode в своем PHP-скрипте. Это вернет данные в кодировке JSON, которые вы можете напрямую использовать в javascript:

$.ajax({ 
    type: 'POST', 
    url: './', 
    data: { token: token, re: '8' }, 
    cache: false, 
    timeout: 5000,
    success: function(data){ 
        // data will already be a javascript object that you can manipulate
    }                           
}); 
1
ответ дан 17 December 2019 в 00:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: