好吧,我正试图从某个网页上获取HTML。此网页的URL中包含UTF-8字符,PHP正在向我显示此错误:
警告: 的file_get_contents(http://enem.descomplica.com.br/gabarito/enem/2015/dia-1-2a-aplicacao/questoes/dubai-é-uma-cidade-estado-planejada-para/): 无法打开流:HTTP请求失败!找不到HTTP / 1.1 404 第102行的C:\ xampp2 \ htdocs \ test \ index.php
第102行是:
if($content = file_get_contents($this->link)){
我确信问题实际上是URL中的'é',因为当我尝试将此函数与不包含UTF8字符的URL一起使用时,它可以正常工作。
更具体地说,没有UTF-8字符的URL是:
有谁知道我该怎么办?
提前致谢!
答案 0 :(得分:0)
嗯,答案比我想象的要简单。
而不是使用原始网址
我使用方法rawurlencode
仅对UTF-8字符进行编码,如:
$url = "http://enem.descomplica.com.br/gabarito/enem/2015/dia-1-2a-aplicacao/questoes/dubai-" . rawurlencode("é") . "-uma-cidade-estado-planejada-para/";
现在有效!