2011-06-10 11 views
2

をデコードします。上記のJSONをPHPを使ってデコードする方法を知っていますか?PHPのJSONは、私は、次のファイルを持っているtxtファイル

私のPHPコード

var_dump(json_decode('data.txt', true));// var_dump value null 

foreach ($data->name as $result) { 
     echo $result.'<br />'; 
    } 
+0

私は答えを与えてきましたが、あなたは本当にただPHPマニュアルを検索し、関数が取るどのような引数を参照し、例をチェックアウトする必要があります。また、関数があるファイルI/O関数を介して最初にロードしなければならない一連のデータに対して関数が動作する場合は、事前知識が必要です。 – Matthew

答えて

19

json_decodeは、文字列を引数として取ります。あなたは、文字列の周りにオブジェクト間のカンマを引用符を追加して含む配列(またはオブジェクト)内のオブジェクトを配置することで、有効なJSONであるためにあなたのサンプル文字列を調整する必要がありますfile_get_contents

$json_data = file_get_contents('data.txt'); 
json_decode($json_data, true); 

のファイルに読み込みます。

[{"name":"yekky"}, {"name":"mussie"}, {"name":"jessecasicas"}] 
+0

指定されたファイルで失敗します。 – KingCrunch

1

あなたのJSONデータが無効です。複数のオブジェクトがあり(引用符がありません)、json_decodeにフィードする前に、それらを区切るための何らかの方法が必要です。

1
$data = json_decode(file_get_contents('data.txt'), true); 

しかし、あなたのJSONを正しくフォーマットする必要があります

[ {"name":"yekky"}, ... ] 
3

私はあなたが有効なJSONを生産していないyour other questionで述べたように。そこに私の答えを、それを作成する方法を参照してください。それは

[{"name":"yekky"},{"name":"mussie"},{"name":"jessecasicas"}] 

(私はあなたの引用符はなくなっているところ、知らない、しかしjson_encode()は、通常は有効なJSONを生成)

ような何かにつながるそして、これはあなたが持っている

$data = json_decode(file_get_contents('data.txt'), true); 
0

簡単に読めますファイルを読んでください!

$json = file_get_contents('data.txt'); 
var_dump(json_decode($json, true)); 
1

JSONLintによると、有効なJSONファイルではありません。それがなかった場合は、まずそれを読む必要があるだろう:

$jsonBytes = file_get_contents('data.json'); 
$data = json_decode($jsonBytes, true); 
/* Do something with data. 
If you set the second argument of json_decode (as above), it's an array, 
otherwise an object. 
*/ 
関連する問題