我正在尝试将应用程序重新设置为php,之前在javascript中使用$ .get调用,有没有办法在php中调用它以便我可以使用响应数组'答案'?
$.get('crawl.php', { text: passURL }, function(answer) {
images = answer.images;
}, "json");
我发现的唯一的东西是http_get方法似乎没有响应任何东西
$response = http_get('crawl.php', array( text=> $passURL), $answer);
$images = $answer['images'];
我刚刚调用该方法是错误的还是我应该在php中使用替代方法?
答案 0 :(得分:2)
尝试查看curl
或file_get_contents()
。
然后,您需要使用DOMDocument
(或类似的)来解析生成的DOM,或者如果结果为JSON
,则在结果字符串上使用json_decode
。
答案 1 :(得分:0)
PHP不像JavaScript那样异步工作,所以你会得到这个(假设有一个JSON响应):
$answer = json_decode(
file_get_contents('http://host/path/crawl.php?' . http_build_query([
'text' => $passUrl
])),
true
);
或者,使用cURL。
答案 2 :(得分:0)
是的,PHP提供了许多从URL下载数据的方法。
事实上,如果在配置文件中启用了allow_url_fopen
,您几乎可以使用任何打开文件的功能来加载来自URL的数据。
但要更好地控制标题,请使用POST等。使用cURL。
您可能希望使用json_decode()
解析返回的数据,方法与使用JSON.parse()
的JavaScript相同。