2012-03-12 11 views
0

私はjavaからphpにjsonオブジェクトを送ります。私はオブジェクトとしてJSONを送信Java側でgsonを使用しています:jsonオブジェクトfrom PHP

Javaコード:

Fruit fruit = new Fruit(); 
fruit.setFruidId(6); 
fruit.setAvailable("yes yes"); 

Gson gson = new Gson(); 
String json = gson.toJson(fruit); 

をこのJSON文字列は、Java側を使用して、この

{"fruidId":6,"available":"yes yes"} 

のように見える私は、JSONデータを取得することができますこのようなオブジェクトとして

Gson gson = new Gson(); 
Fruit a = gson.fromJson(json, Fruit.class); 
System.out.println(fruit.getFruitId()); 

私はオブジェクトとしてPHPのデータを取得したいと思います。私がjavaを使って行ったようなものです。 このようにすることは可能ですか?方法を教えてください。

+2

[json_encode()](http://php.net/json_encode)と[json_decode()](http://php.net/json_encode) – drew010

+0

Javaではこのようにすることはできません。 PHPはjavaではありません。しかし、あなたは['json_decode'](http://php.net/json_decode)が役に立つかもしれません。しかし、それはjson文字列から 'Fruit'を作成することはできません。特に心配していますか? – hakre

+0

はい私はjson文字列の中からFruitオブジェクトを作成したかったのです。 – user510783

答えて

0

json_decodeを2番目のパラメータとしてfalseをオブジェクトに設定するか、trueを配列として使用します。 Uは、POSTメソッドを介して、PHPサーバーに上記と同じJSONオブジェクトを送信する場合

+0

Javaコードのように 'Fruit'オブジェクトを返す方法は? – hakre

+0

$ json = '{"fruitId":6、 "available": "はいはい"}'; $オブジェクト= json_decode($ json); echo $ object-> fruitId; –

+0

私はこのようにしたい$ fruit-> getFruitId()... $ object-> fruitId このオブジェクトのテクニックを忘れる必要があると思うようなことができない場合は – user510783

0

、それは

$ JSON = $ _SERVER [ 'HTTP_JSON']としてPHPを使用して復号化することができます。

$ data = json_decode($ json);

$ name = $ data-> fruitId;

$ pos = $ data-> Available;

そうすべきです。