2012-06-06 62 views
-1

我有这个在JavaScript中,a.php只会 -从JavaScript调用PHP函数返回一个数组

function gettemplate(realnam) { 

警报(realnam) }

我想通过所有A []数组func_a.php到第一个文件a.php ..在javascript中使用数组。 我该怎么做? 非常感谢

编辑 - 它的作品!如果有人需要的 -

$a= json_encode($a); 
    echo "<SCRIPT LANGUAGE='javascript'> gettemplate('$a');</SCRIPT>\n"; 

:)

+1

的(HTTP [转PHP和JavaScript之间的数组的最佳方法]可能重复:// stackoverflow.com/questions/393479/best-way-to-transfer-an-array-between-php-and-javascript)以及其他几个... –

+0

为什么你想要它作为一个数组? Javascript期待一个html片段。 – symcbean

回答

0

可以返回(回音)在func_a.php一个JSON字符串http://de.php.net/manual/en/function.json-encode.php并解析它在JavaScript

echo json_encode($a); 
+0

谢谢!作品! –

+0

是否可以这样做:'var txt = <?php echo json_encode($ this-> check()); ?>;'其中'check()'是同一个文件中的PHP函数,它返回一个数组。尝试过,但现在工作。 –

0

您需要序列化和解析数组,XMLHttpRequest的只能包含XML或原始文本。选择的格式是JSON,它受到广泛支持,包括PHP和JavaScript。

Serverside你将使用json_encode。不要忘记使用有效的MIME类型来提供JSON。您还应该将错误消息编码为有效的JSON。

客户端,即在回调函数中,您将在xmlhttp.responseText上使用JSON.parse。

你也可以在网上找到很多有关这方面的信息,你只需要搜索。

0

阅读JSON格外json_encode。 func_a.php必须返回是这样的:

header('Content-type: application/json'); 
echo json_encode($a); 

要获取对象在JavaScript中使用这样的:

var myResponseObject = JSON.parse(xmlhttp.responseText);