0

我在 php 中编写了一个文件,它正在做一些幕后工作,并根据 location GET 参数返回一个简单的数字,在这种情况下输出为 49,你自己看看,剪切并粘贴到浏览器中:

http://www.ericseven.com/distance.php?location=3133 W. Belle Ave San Tan Valley, AZ 85142

当我将其拉入另一个 php 文件时,我想使用该数字进行一些计算,它会莫名其妙地返回一个不同的数字(在本例中为 7174,如果您点击以下 URL,则可以看到):

http://www.ericseven.com/test.php

这是 test.php 的来源 - 注意 $url 与上面的位置参数相同(它是剪切和粘贴):

$url = "http://www.ericseven.com/distance.php?location=3133 W. Belle Ave San Tan Valley, AZ 85142";
$contents = file_get_contents($url);
echo $contents;

我已经搜索和搜索,我不知道我是否搜索错误或交易是什么,但我找不到这两个数字(49 和 7174)之间的任何关系,也找不到任何处理类似问题的人. 仅供参考,我尝试了 fopen/fread - 结果相同。

4

2 回答 2

2

尝试

$url = "http://www.ericseven.com/distance.php?location=".urlencode("3133 W. Belle Ave San Tan Valley, AZ 85142");
于 2012-07-09T17:37:09.523 回答
2

您需要对 URL 进行编码。

<?php
$location = "3133 W. Belle Ave San Tan Valley, AZ 85142";
$url = 'http://www.ericseven.com/distance.php?location='.urlencode($location);
$contents = file_get_contents($url);
echo $contents;
?>
于 2012-07-09T17:40:00.380 回答