0

file_get_contentsに奇妙な状況があります。Web サービスはurlを返すので、そのURLでfile_get_contents ()を使用して、その URL からファイルのコンテンツを取得します。

何かのようなもの:

$url = $result_from_webservice->url;

if( file_get_contents( $url ) ){
    echo 'ok';
}
else{
    echo 'error';
}

そのコードの結果は「エラー」です。

$url変数を直接設定しようとしました。URLの結果を表示しました

echo $result_from_webservice->url;

魔女から次のような URL を取得しました: https://site.com/page.php?foo1=bar1&foo2=bar2

そして、次のような直接の結果を使用しました:

$url = 'https://site.com/page.php?foo1=bar1&foo2=bar2';

そして驚き..うまくいきました(result = "ok")。

次に、スマート ブラウザがページ コンテンツを滑らかにしようとしたと考えて、urldecode を適用しようとしました。

$url = $result_from_webservice->url;
    $url = urldecode( $url );

しかし、成功しません。

私はphpがすべてのエラーを出力し、エラーなし、警告なし、通知なしを許可しました。

誰かがここで何が起こっているのか、どうすれば解決できるのか考えていますか?

4

1 に答える 1

0

URL を使用する前に、文字列にキャストしてみてください。

$url = (string)$result_from_webservice->url;
于 2012-07-26T08:20:07.107 に答える