Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于Java解析的PHP数组输出?_Java_Php_Arrays_Json_Serialization - Fatal编程技术网

用于Java解析的PHP数组输出?

用于Java解析的PHP数组输出?,java,php,arrays,json,serialization,Java,Php,Arrays,Json,Serialization,我有一个用Java编写的类,它调用PHP服务器获取一系列项目的信息。这个系列应该以某种集合的形式返回,比如数组、JSON编码的数组等等 有没有一种方法可以让PHP以某种方式返回数据集合,使其可以在Java中轻松解析并用作数组或对象?例如,如果我对我的PHP数组进行JSON编码或序列化,它是否可以轻松地进行JSON解码或非序列化,然后用作数组?是和否。 PHP具有用json编码数组的功能 最大的问题是Java是一种类型化语言,而PHP不是 您必须确保PHP数组中的值具有正确的类型,否则可能会得到意

我有一个用Java编写的类,它调用PHP服务器获取一系列项目的信息。这个系列应该以某种集合的形式返回,比如数组、JSON编码的数组等等

有没有一种方法可以让PHP以某种方式返回数据集合,使其可以在Java中轻松解析并用作数组或对象?例如,如果我对我的PHP数组进行JSON编码或序列化,它是否可以轻松地进行JSON解码或非序列化,然后用作数组?

是和否。 PHP具有用json编码数组的功能

最大的问题是Java是一种类型化语言,而PHP不是

您必须确保PHP数组中的值具有正确的类型,否则可能会得到意外的结果


未设置的值是最危险的。如果PHP数组包含null或false,并且Java类需要一个空字符串,那么您可能会遇到麻烦

如果您的问题是因为java用于实际解析JSON的复杂类,那么您可以使用库

下面是如何解码JSON()的一个片段:


对似乎您已经回答了自己的问题。json与数据交换一样简单。是的,但是没有任何方便的库/内置类来快速处理此解析过程。你能推荐一个吗?来自JSON.org的Java库就是这样,一个庞大的库,需要无数的类和包来完成一些相对简单的事情(你试过这个吗?和
json_encode()
json_decode()
都是PHP中的本机函数。谢谢。我知道PHP对数组进行编码/解码的能力,但我没有看到这个Java库。让我看看吧!)
String s="[0,{\"1\":{\"2\":{\"3\":{\"4\":[5,{\"6\":7}]}}}}]";
Object obj=JSONValue.parse(s);
JSONArray array=(JSONArray)obj;
System.out.println("======the 2nd element of array======");
System.out.println(array.get(1));
System.out.println();

JSONObject obj2=(JSONObject)array.get(1);
System.out.println("======field \"1\"==========");
System.out.println(obj2.get("1"));