当前位置: 首页 > 面试题库 >

如何使用PHP和Ajax将数组传递给Javascript?

须峰
2023-03-14
问题内容

如果这个解释不清楚,我很抱歉,我也很难理解。 如何使用PHP和Ajax将数组发送到Javascript?
我正在使用Ajax来获取照片阵列,然后希望将其追加到<div>页面上的空白处。

jQuery如下所示:

$.ajax({
    url: "<?php echo site_url('demo/getPhotos/'); ?>",
    type: 'POST',
    data: form_data,
    success: function(data) {
        alert(data);
   }

PHP函数getPhotos如下所示:

<?php

$photos = array();

foreach ($data as $photo) {
    array_push($photos,$photo['source']);
    }

// echo json_encode($photos); How should I be returning $photos?

如果仅echo $photos;将数据发送到成功回调,但它似乎不是可用的格式。

如果我var_dump($photos)在PHP中执行,结果将类似于:

array(4) {
  [0]=>
  string(14) "some_image.jpg"
  [1]=>
  string(14) "some_image.jpg"
  [2]=>
  string(14) "some_image.jpg"
  [3]=>
  string(14) "some_image.jpg"
}

我已经尝试过json_encode诸如此类的各种组合,但实际上我在猜测并且不确定其背后的理论。在这种情况下,将数据从PHP传递到Javascript的最佳方法是什么?


问题答案:

尝试:

$.ajax({
    url: "<?php echo site_url('demo/getPhotos/'); ?>",
    type: 'POST',
    data: form_data,
    dataType:"json",
    success: function(data) {
        alert(data[0]);
   }

在PHP方面,您将需要打印:

print json_encode($photos);

为了更好地封装代码,您还可以尝试做另一件事,例如,作为进一步实现JSON欺骗的示例:

print json_encode(array("photolist"=>$photos,"photo_owner"=>"Me!"));

然后,在服务器上,您可以使用以下命令访问它们:

data.photolist[0]; //First photo
data.photo_owner;  //The owner of the photo set


 类似资料:
  • 问题内容: 我想在PHP中操纵JavaScript数组。可以做这样的事情吗? 活动是一维数组,例如: 尝试此脚本时无法完成…如何解决? 问题答案: 而已!现在您可以在PHP中访问它:

  • 问题内容: 目前,我正在使用Ajax来开发现有脚本,这是我以前从未使用过的东西。我在javascript文件中设置了一个变量,该变量从页面上的输入字段获取其值。我只需要使用Ajax将其发布到我的PHP页面,不知道从哪里开始, 我不确定您需要查看什么代码,但是我的javascript / AJAX代码是,我需要传递的变量是’var credoff’ 一定要采用这种格式吗? 问题答案:

  • 问题内容: 我有一个PHP脚本,可以从数据库中检索名称(字符串)。我想使用$ .ajax()将此数组传递给Javascript。我不明白如何在PHP中对数组进行编码,然后在Javascript中对其进行解码。有人可以为此提供示例代码吗?非常感谢 !! 问题答案: HTML档案:

  • 问题内容: 我想将数组作为Ajax请求发送: 我怎样才能做到这一点? 问题答案: info = []; info[0] = ‘hi’; info[1] = ‘hello’;

  • 问题内容: 我有一个简单的web方法和ajax调用,并继续收到一个错误,说它无法将字符串转换为IDictionary对象? 这是ajax调用: 这是webMethod: 这是我从FireBug中看到的内容: 响应标头 服务器:Microsoft-IIS / 5.1 日期:2009年4月9日,星期四,格林尼治标准时间 jsonerror:true 缓存控制:私有 内容类型:application /

  • 使用Spring数据MongoDB。我在MongoRepository上定义了这个查询: 由于我想使用运算符,我不能通过方法命名方式构建查询,所以我使用注释。 我已经调试了prints。我将该值修改为,但没有变化。