php 字符串在方法 file_get_contents($var) 中不可用
php string not usable in method file_get_contents($var)
我有一种方法可以从 url 和 returns 中抓取数据作为字符串变量。目前,如果我输入自己的 url,该方法可以正常工作,但是当我插入生成的 url 时,它不起作用。
例如
如果我将以下字符串插入到变量中并传递它,则以下字符串有效:
http://www.rijkswaterstaat.nl/apps/geoservices/rwsnl/awd.php?mode=html&projecttype=windsnelheden_en_windstoten&category=1&loc=ZBWI&net=LMW
但是这个字符串是由另一个来源生成的。我尝试获取它的结果是 (var_dump()
):
string(154) "http://www.rijkswaterstaat.nl/apps/geoservices/rwsnl/awd.php?mode=html&projecttype=windsnelheden_en_windstoten&category=1&loc=ZBWI&net=LMW"
该字符串只有 138 个字符,但它打印出 string(158)。我认为这与它不起作用的事实有关,但我什至不确定...
有谁知道如何清理它吗?我发现了其他问题,为什么 var_dump()
显示另一个值然后是字符串的长度,这与不可见字符有关,但没有给出真正的解决方案。
感谢
154-138 = 16
字符串中有 4 个 &
&
HTML编码为&
所以您的字符串似乎是 HTML 编码的 - 在浏览器中您看不到编码,除非您 "View Source".
您可以使用 html_entity_decode()
解码字符串,或者,如果可能,请确保您首先获得的字符串未针对 HTML 输出进行编码。
我有一种方法可以从 url 和 returns 中抓取数据作为字符串变量。目前,如果我输入自己的 url,该方法可以正常工作,但是当我插入生成的 url 时,它不起作用。
例如
如果我将以下字符串插入到变量中并传递它,则以下字符串有效:
http://www.rijkswaterstaat.nl/apps/geoservices/rwsnl/awd.php?mode=html&projecttype=windsnelheden_en_windstoten&category=1&loc=ZBWI&net=LMW
但是这个字符串是由另一个来源生成的。我尝试获取它的结果是 (var_dump()
):
string(154) "http://www.rijkswaterstaat.nl/apps/geoservices/rwsnl/awd.php?mode=html&projecttype=windsnelheden_en_windstoten&category=1&loc=ZBWI&net=LMW"
该字符串只有 138 个字符,但它打印出 string(158)。我认为这与它不起作用的事实有关,但我什至不确定...
有谁知道如何清理它吗?我发现了其他问题,为什么 var_dump()
显示另一个值然后是字符串的长度,这与不可见字符有关,但没有给出真正的解决方案。
感谢
154-138 = 16
字符串中有 4 个 &
&
HTML编码为&
所以您的字符串似乎是 HTML 编码的 - 在浏览器中您看不到编码,除非您 "View Source".
您可以使用 html_entity_decode()
解码字符串,或者,如果可能,请确保您首先获得的字符串未针对 HTML 输出进行编码。