java - 将数组php转换为java

标签 java php arrays multidimensional-array

我正在开发一个包含 java 文件和 php 文件的应用程序。 java 文件调用 php 文件,这些文件在 ddbb 中执行查询并将结果作为数组 php 返回,但将其打印在屏幕上。我在 java 中把它当作一个字符串,我必须将它转换为数组或集合,但我不知道该怎么做。

php 打印结果的一个例子是:

Array
(
[0] => Array
    (
        [id] => 1
        [0] => 1
        [name] => pepe
        [1] => pepe
    )

[1] => Array
    (
        [id] => 2
        [0] => 2
        [name] => antoñito
        [1] => antoñito
    )

[2] => Array
    (
        [id] => 3
        [0] => 3
        [name] => loló
        [1] => loló
    )

[3] => Array
    (
        [id] => 4
        [0] => 4
        [name] => ñoño
        [1] => ñoño
    )

[4] => Array
    (
        [id] => 5
        [0] => 5
        [name] => Antoñito
        [1] => Antoñito
    )

[5] => Array
    (
        [id] => 7
        [0] => 7
        [name] => José
        [1] => José
    )

)

如果我使用 json_encode($the_array) 这是结果:

[{"id":"1","0":"1","name":"pepe","1":"pepe"},    {"id":"2","0":"2","name":"anto\u00f1ito","1":"anto\u00f1ito"},{"id":"3","0":"3","name":"lol\u00f3","1":"lol\u00f3"},{"id":"4","0":"4","name":"\u00f1o\u00f1o","1":"\u00f1o\u00f1o"},{"id":"5","0":"5","name":"Anto\u00f1ito","1":"Anto\u00f1ito"},{"id":"7","0":"7","name":"Jos\u00e9","1":"Jos\u00e9"}]

谢谢大家

最佳答案

您应该为您的数据选择一种序列化方法。例如XML,Protocol Buffers或 JSON。

我个人建议您使用 JSON,因为它是轻量级的,即使对于人类来说也很容易阅读,并且两种语言都有广泛的库可供选择。

PHP端编码

$encoded = json_encode($data);

使用 Jackson 在 Java 端解码

final ObjectMapper objectMapper = new ObjectMapper();
// the better way is to create a custom class with the correct format
final Map<?, ?> decoded = objectMapper.readValue(encoded, Map.class);

关于java - 将数组php转换为java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54394743/

相关文章:

c - 如何在c中将字符串从一维数组复制到二维数组?

java - Android Studio Swictch-case 实例无法正常工作

java - 如何从struts2发送数据到javascript函数来绘制图表

java - 将通用列表转换为通用数组

arrays - MIPS:访问和比较字符串数组中的元素

php - Yii:如何从数组中设置 dropDownList 'options'

java - JDBC 中缺少 dll

php - HTML <p> 标签忽略数据库换行符

javascript - 在 fullcalendar.js 中使用 PHP 日期时,条目提前一个月

php - 在 Laravel Blade View 中从 JSON 数据创建菜单