2016-03-07 38 views
0

嘿,我正在製作一個android應用程序,用戶的請求格式爲json。他們要求將這個樣子..從一個用戶的url解碼Json對象來自用戶

JSONObject j = new JSONObject(createJson()); 
      String url ="http://codemoirai.esy.es/test.php?UserDetails="+j; 

    Where j = {"Email":"[email protected]","Username":"xyz","Password":"xyz"} 

這就是我會被髮送到test.php的,我想知道我可以獲取這些數據,並使用PHP顯示。

<?php 
require "init1.php"; 



$jsonObject = $_GET["UserDetails"]; 
$obj = json_decode($jsonObject); 
$email = $obj->Email; 
$password = $obj->Password; 
....... 


echo $email; //Everthing i fetch from jsonObject is null. Why? 


?> 

ThankYou,這是正確的,我是如何獲取PHP?

+0

Basicly您選擇發送的字符串到test.php不是一個對象。 Json_decode使用json語法將字符串解碼爲一個php數組然後你用van foreach循環迭代它 – Julez

+0

其實我以另一種方式做了對不起 – Jois

回答

1

在test.php的可以用$_GET['UserDetails']趕上數據然後將其與json_decode($_GET['UserDetails')

然後解碼可以用一個環路foreach

例遍歷它:

if(isset($_GET['UserDetails'])) { 
    $details = json_decode($_GET['UserDetails']); 

     foreach($details as $key => $val) { 
      echo $key.' = '.$val; 
     } 
+0

你能告訴我一個例子嗎?爲什麼foreach? – Jois

+0

Json_decode使它成爲一個數組。然後你使用一個在PHP – Julez

+0

中的foreach迭代它,它使它只作爲一個數組,如果我們指定爲true – Jois