如何使用Javascript从托管PHP脚本获取JSON数据?

时间:2017-03-05 21:07:56

标签: javascript php json

我正在尝试从我的网络托管上托管的PHP脚本中获取JSON数据(本地在Xampp中)。

PHP脚本是这样的:

static int compareMatrixElements(const void *p1, const void *p2)
{
    return ((*(int const *) p1) - (*(int const *) p2));
}

void sortMatrix(int** matrix, int r, int c)
{
    int sort_matrix[r][c];

    for(int i = 0; i < r; i++) {

        memcpy(sort_matrix[i], matrix[i], c * sizeof(int));
    }

    qsort(sort_matrix, r*c, sizeof(int), compareMatrixElements);

    for(int i = 0; i < r; i++) {

        memcpy(matrix[i], sort_matrix[i], c * sizeof(int));
    }
}

从服务器直接运行(http://website.com/php/script.php)时显示的数据:

<?php

header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET, POST'); 

// Creating the data array
$data = array(
    'id' => '1',
    'url' => 'http://twitter.com',
    'text' => 'test 001',
);

header('Content-Type: application/json');
echo json_encode($data, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES);

?>

破坏的HTML / JS应该输出:

{
    "id": "1",
    "url": "http://twitter.com",
    "text": "test 001"
}

我在xampp中运行html作为.php脚本,我不确定这是否与jQuery或常规JS有任何区别,但大多数事情似乎都很好。

如何取回数据&#34; 1&#34;,&#34; http://twitter.com&#34;和&#34;测试001&#34;等?

1 个答案:

答案 0 :(得分:0)

在这种情况下的问题是我在xampp中运行html作为.php文件,由于某种原因导致它不返回任何数据。

将其更改为.html后,它运行正常。