2014-04-06 91 views
2

我想发送字符串数组到php由Json和检索那里。发送字符串数组到php

String[] Books = {"book1", "book2", "book3", "book4",..}; 

在JSON:

List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>; 
nameValuePairs.add(new BasicNameValuePair("books", Books)); 
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 
... 

在PHP端:

$books = $_POST['books']; 
$result = json_decode($books); // is this OK? 

或者我可以用它象下面这样?

$book1 = $result[0]; 
+0

如果u发送的数据为JSON然后u需要json_decode(),但行的数据没有任何JSON格式化发布数据将以数组形式。 –

+0

我由json发送。问题是我不确定这种方法是否正确。是否是$ result和数组。 'nameValuePairs.add(new BasicNameValuePair(“books”,Books));'发送字符串数组的好方法或者我应该使用'nameValuePairs.add(new BasicNameValuePair(“books”,Books []));'here? –

回答

1
$jsonString = '["[email protected]","[email protected]","[email protected]"]'; 
$arrayOfYourEmails=json_decode($jsonString); 

或者

$jsonString = "[\"[email protected]\",\"[email protected]\",\"[email protected]\"]"; 
$arrayOfYourEmails=json_decode($jsonString); 

和是你的代码是正确的

$books = $_POST['books']; 
$result = json_decode($books); 
+0

在'$ arrayOfYourEmails = json_decode($ jsonString);'你正在解码一个静态'$ jsonString'。但我需要解码'String [] Books = [“book1”,“book2”,“book3”,“book4”,...]'。 –