如何通过javaScript/jquery从php获取多个返回值?

如何通过javaScript/jquery从php获取多个返回值?,javascript,php,json,Javascript,Php,Json,这是我的javaScript代码: $(document).ready(function() { $('#IMDB').click(function() { var MovieID = $('#MovieID').val(); $.post('action/action.php', { url: "http://api.themoviedb.org/3/movie/"+MovieID +"?append_to_response=credits,image

这是我的javaScript代码:

$(document).ready(function() {
    $('#IMDB').click(function() {  
       var MovieID = $('#MovieID').val();

       $.post('action/action.php', { url: "http://api.themoviedb.org/3/movie/"+MovieID
+"?append_to_response=credits,images&api_key=myapikey" }, function(data) {
           $("#test").html(data);
       });
    });
});
当我点击按钮时,我从我插入的输入字段中获取imdb id 然后我从php得到实际结果。这是我的php代码

<?php 
    $url = $_POST['url'];
    $url2 = file_get_contents($url);
    $json = json_decode($url2, true); //This will convert it to an array
    $title = $json['original_title'];
    $imdb = $json['imdb_id'];

    echo $title;
    echo $imdb;

    return true;

?>

请帮助我如何获取多个值?

您只需返回一个数组而不是单独的值:

return json_encode([$title,$imdb]);
然后在js中解析返回的数据并从中提取所需的属性:

data = JSON.parse(data);

$("#test").html(data[0]); 
$("#test2").html(data[1]);
或者您可以将
json
添加到
$中。post
请求不必解析返回的数据:

$.post('action/action.php', { url: ...}, function(data) {
    $("#test").html(data[0]); 
    $("#test2").html(data[1]);
}, "json");
//__^^^^__

希望这会有所帮助。

只输出整个JSON结构并在Javascript中使用它可能是最简单的,但是如果您只需要标题和id,请将您的单个
echo
调用更改为带有哈希的调用:

header('Content-Type: application/json');
echo json_encode(array(
  'title' => $title,
  'id' => $imdb
));
然后,您可以使用以下方法在javascript中引用它们:

var id = data.id;
var title = data.title;

echo json_encode(数组($title,$imdb))然后使用返回的对象。它只返回一个单词:(电影标题的第一个字母Leop:这是最好的答案。我建议将此作为出发点。哇,非常感谢@Rob M。完美的答案非常感谢:):)没问题,很高兴它帮助了你!
var id = data.id;
var title = data.title;