PHP到Javascript数组(种类)

tar*_*eld 1 javascript php arrays json

这里有一个我在javascript中的数组,这很棒!

_rowData: [
    { name: "Most Recent", view: "recentView" }, 
    { name: "Most Popular", view: "popularView" }, 
    { name: "Staff Picks", view: "staffView" }
],
Run Code Online (Sandbox Code Playgroud)

我怎么能从PHP脚本生成这个数组?我想用AJAX来获取php返回的结果.

谢谢!

编辑 我如何操纵这个PHP返回json,回到_rowData

Ale*_*lex 9

尝试使用JSON.PHP函数json_encode()

编辑: 代码示例(服务器端 - PHP):

  // data handling
  $arrayToSend = array(array('name'=>'Most Recent', 'view'=>'recentView'),
                       array('name'=>'Most Popular', 'view'=>'popularView'),
                       array('name'=>'Staff Picks', 'view'=>'staffView'));

  echo json_encode($arrayToSend);
Run Code Online (Sandbox Code Playgroud)

客户端(javascript).注意:YUI用于显示客户端处理:

var callback = {success: function(req) {
                            selectItems(req.responseText);
                         }
                };
YAHOO.util.Connect.asyncRequest('GET',url + '?param=1',callback);

function selectItems(resp) {

  var result = eval('(' + resp + ')');

  for (var i=0; i < result.length; i++) {
    // Do whatever you want with array result :)
  }
}
Run Code Online (Sandbox Code Playgroud)

注释:1)在PHP脚本中,您必须进行响应,输出您之前编码为JSON格式的数组.2)除了YUI,您还可以使用任何适当的JavaScript库来生成AJAX请求(即JQuery,Prototype).在我的例子中,我使用函数eval()从JSON响应中生成数组.

希望,它会帮助你.