2012-03-09 13 views
-1

このコードを使用して、多くのjsonファイルからjsonデータを取得して、1つのjsonにコンパイルします。PHPを使ってJsonデータをロードするとエラーが発生する

マイYQLクエリーはこの形式になります。

select * from json where 
url="http://ebird.org/ws1.1/data/obs/region_spp/recent?rtype=subnational2&r=US&sci=Dendrocygna%20autumnalis&fmt=json" 
or url = "http://ebird.org/ws1.1/data/obs/geo_spp/recent?lng=-119.859512&lat=34.410240&sci=Dendrocygna%20autumnalis&dist=49&back=14&maxResults=10000&fmt=json&includeProvisional=true" 
and itemPath = "json.json" 

私はYQLクエリーのURLのq=一部を得るために、上記をrawurlencode。次に、私はこの出力されたURLを取得します。私はそれを使用していたときに

cbfunc({"error":{"lang":"en-US","diagnostics":{"publiclyCallable":"true"},"description":"Query syntax error(s) [line 1:3675 missing EOF at '_']"}}); 

だから私は求めています、なぜそれが動作しません。私のブラウザにエコーされたURLをコピーして貼り付けるときには正常に動作しますが、私はこれを取得URLにfile_get_contentsを使用しようとすると、 file_get_contentsと表示されますが、ブラウザでURLを使用しているときは表示されます。また、PHPと一緒に複数のjsonファイルを使用するよりスマートで簡単な方法はありますか?私はYQLのJSONを引っ張ってカール使用してみましたとのような奇妙な出力を得た:この方法は大丈夫だと思う

8<\/howMany>34.4136<\/lat>-119.8756<\/lng>L615794 

、私は利用可能な配列にそれを取得する方法がわかりません。

答えて

1

rawurlencode()の代わりにurlencode()を使用してください。あなたがそれを送るシステムは、エンコーディングが気に入らないかもしれません。

+0

同じエラーが発生します。私はこれでかなり困惑しています。 – Patrick

+0

あなたのコードを掲載して見せることができますか? –

+0

ご協力ありがとうございます。私は、私のコードをStackoverflowテキストエディタのコードブロックにするスペースを追加していたが、私は自分のjsonのURLにスペースがあることに気付いた。それは今働く。あなたは間接的に私を助けたので、ありがとう! – Patrick

関連する問題