我正在做一个课程,我试图将一个数组从 php 'client' 传递给 java 'server'。我在 php 中创建了一个数组,使用 json_encode 对其进行编码,并使用 StringVariable.readLine() 在服务器站点上接收它。我的问题:
php 数组的值在 java 中作为数组的一个值接收。请看一下代码和输出。
PHP - 作为“发件人”
$array = array("foo", "bar", "hallo", "world");
$array2 = json_encode($array);
//var_dump($array);
$socket = fsockopen($server, $port, $eN, $eS);
if ($socket)
{
fwrite($socket, $array2);
Java - 作为“接收者”
BufferedReader in = new BufferedReader(new InputStreamReader(socket1.getInputStream()));
while ((in1 = in.readLine()) != null)
{
String[] Decoder = {in1};
System.out.println(Arrays.asList(Decoder));
结果
[["foo","bar","你好","world"]]
我通常在寻找一种解决方案,通过我的局域网将数组从 PHP 传递到 JAVA。任何解决方案都会很棒..我也尝试过serialize(),我收到的是
[a:4:{i:0;s:3:"foo";i:1;s:3:"bar";i:2;s:5:"你好";i:3;s:5: “世界”;}]
帮助将不胜感激!!!谢谢你!