如何读取从php脚本发送的数组的值

时间:2015-06-25 20:26:41

标签: javascript php arrays ajax

好的,我有一个txt文件。

我将txt文件的数据转换为数组。

$lines = file($filename);

然后将数据发送回客户端($ filename通过ajax确定)

print_r( array_values( $lines ));

我从ajax

中检索数据
    success: function(docinfo){
        alert(docinfo);
    }

我得到这样的东西:

Array
(
    [0] => 10
    [1] => 123
    [2] => 455
    [3] => 325
    [4] => 33
    [5] => 3
)

但是当我想访问数组的值

console.log(docinfo[0]);//which represents the first line of my txt file

我得到" A"这是" Array"的第一个字母。不是我想要的docinfo [0]的价值。

有没有办法可以发送数组并检索值,以便我可以按照我想要的方式使用它们?

2 个答案:

答案 0 :(得分:2)

您是否尝试使用json_encode()打印数组?

echo json_encode(array_values($lines));

答案 1 :(得分:1)

Javascript不了解PHP的对象格式,您需要将PHP的对象转换为javascript解析器可以理解的形式。我们称之为序列化,javascript的格式称为JSON。

<?php
echo json_encode(array_values($lines));
?>

这将为您提供之类的

  [
    1,2,3,4,5
  ]

然后,您可以更改onsuccess函数以解析PHP发回的JSON:

success: function(docinfo){
    infoparsed = JSON.parse(docinfo)
    alert(docinfo[0]);
}