gpt4 book ai didi

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

转载 作者:IT王子 更新时间:2023-10-28 23:59:52 24 4
gpt4 key购买 nike

抱歉,如果这个解释不清楚,我也很难理解。 我如何使用 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);

为了更好地封装您的代码,您可能会尝试的另一件事是:

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

然后在服务器上,您可以通过以下方式访问它们:

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

关于php - 如何使用 PHP 和 Ajax 将数组传递给 Javascript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7263052/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com