0
私はcURLリクエストを使用してXMLデータを取得していますが、これはブラウザで正常に動作しますが、PHP cURLのテキストを返します。私はここでいくつかの同様の質問を見て、答えを試した。ここにコードがあります。cURLリクエストでXML出力を強制します
$url = 'http://forecast.weather.gov/MapClick.phplat=38.4247341&lon=-86.9624086&FcstType=xml';
$agent = 'Myapp/v1.0 (http://example.org;[email protected])';
$rCURL = curl_init();
curl_setopt($rCURL, CURLOPT_URL, $url);
curl_setopt($rCURL, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($rCURL, CURLOPT_USERAGENT, $agent);
curl_setopt($rCURL, CURLOPT_HTTPHEADER, 'Content-Type: application/xml');
curl_setopt($rCURL, CURLOPT_BINARYTRANSFER, 1);
$aData = curl_exec($rCURL);
$error = curl_error($CURL);
curl_close($rCURL);
if ($error)
echo ($error);
else echo ($aData);
xmlをリクエストすると、xmlが返されます。おそらく単にテキストとして出力するだけなので、ブラウザにxml 'header( 'Content-Type:application/xml');と' $ url'にタイプミスがあります '... MapClick.phplat = 38.4247341&lo。 ..〜 '... php?lat = ... ' –
これは問題ではありません。結果として、XMLタグが取り除かれたXMLは得られませんが、 XMLで。これは、予測のテキスト形式を求めるときにブラウザで取得するものです。誤字を見つけてくれてありがとう。PHPを投稿にコピーしてサイト名を変更する際にエラーが発生した。 –
さて、私はあなたを理解していないと思います。ちょうどあなたのコードを実行し、有効なXML文書を得ました。ちょうどブラウザで '$ url'を開いて(ソースコードを確認して)取得します。つまり、 'simpleXML'や' DOM'を使って解析することができます。わからない。 –