2017-10-18 88 views
-1

我在读取数据的顺序创建的PHP脚本从Android应用PHP发送并保存在文件中,但在打开文本文件,我得到下面的语句: -PHP脚本返回数组数组?

ArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArray

而不是数据有人可以告诉我哪里出错了,我该如何纠正它?

这里是我的PHP脚本: -

<?php 

$password=""; 
$user="root"; 
$database="shadowpets"; 
$host="localhost"; 
$response=array(); 
$con=mysqli_connect($host,$user,$password,$database)or die("Unable to connect"); 
if($_SERVER["REQUEST_METHOD"]=="POST") 
{ 


    if(isset($_POST['OrderSummary'])) 
    { 

     $data=$_POST['OrderSummary']; 
     $json=json_decode($data,true); 
     $file='text.txt'; 
     $result=file_put_contents($file,$json); 


      $response["success"]=1; 
      $response["message"]="done"; 


    } 
    else 
    { 
     $response["success"]=0; 
     $response["message"]="parameters not correctl formatted"; 
    } 

    echo json_encode($response); 
} 
    ?> 
+0

脚本中包含什么内容?你如何呈现数据? – hungrykoala

+0

请显示您的代码 – KRIPS

+0

如果我们不知道您的代码,我们应该如何知道您做错了什么?请阅读[问]。 –

回答

0

您的$json是一个多维数组,而功能file_put_contents()只接受字符串,数组或数据流作为数据内容。当数组是一维数组时,它存储数组的每个元素。当数组是多维数组,就会造成,

PHP的通知:Array对/home/xxxxx/test.php字符串转换上 xx线

你可以测试简单的演示,这将存储ArrayArrayArray在aaa.txt文件中。并且'Array'的数量是多维数组count([[1,2,3,4],[2],[3]])的3个数,即3。

<?php 
file_put_contents("aaa.txt", [[1,2,3,4],[2],[3]]); 
+0

问题已解决,我想知道如何读取它的元素并将其存储在数据库中 –

+0

嗨,downvoter,你可以将你的想法放在这里。 –

+0

这个答案不能是真的,因为OP会执行'file_put_contents($ file,json_decode($ _ POST ['OrderSummary'],true));'。如果'$ _POST ['OrderSummary']'确实是一个(多维)数组,那么他的文件中的输出将为空['json_decode([[],],true)'](https://ideone.com/ki9o12)返回'NULL' – DarkBee

-1

检查的print_r($ _ POST [ 'OrderSummary'])写入文件之前。必须是数组,

+1

应该是一个评论 – DarkBee

+0

感谢您的建议,我想读的数组的内容,然后将其存储在数据库中你能否建议我这样做? –

+0

坦率地说,我不知道一无所知的$ _ POST [“OrderSummary”]的内容, 如果你想要得到的全部内容为字符串,可使用此爆阵列上。 –