2015-11-23 5 views
0

У меня есть этот скрипт php, который должен выводить массив json, он делает это, но мой массив json начинается с [[], почему эти две дополнительные квадратные скобки [] ?Мой php-скрипт выводит json-массив, который начинается с [[],

$servername = "localhost"; 
$username = "root"; 
$password = "password"; 
$dbname = "mydb"; 
$conn = mysql_connect($servername, $username, $password,$dbname); 
    $result = mysql_query("select * from mydb.mytable") 

    or die(mysql_error()); 

    //create an array 
    $emparray[] = array(); 
    while($row =mysql_fetch_assoc($result)) 
    { 
     $emparray[] = $row; 
    } 
    $object = $emparray; 
    echo json_encode($object) ; 
+4

'$ emparray [] = Array();' Вот вы говорите, добавить массив в качестве первого элемента массива (который получает неявные создали здесь) '$ emparray '. (Измените его на: '$ emparray = array();') – Rizier123

+2

измените это: '$ emparray [] = array();' in to $ $ emparray = array(); ' – Chandan

ответ

2

Вам не нужно назначать $emparray[] с array снова.

Вы можете попробовать ниже один -

$servername = "localhost"; 
$username = "root"; 
$password = "password"; 
$dbname = "mydb"; 
$conn = mysql_connect($servername, $username, $password,$dbname); 
$result = mysql_query("select * from mydb.mytable") 

or die(mysql_error()); 

//create an array 
//$emparray[] = array(); change this one below one 
$emparray = array(); 
while($row =mysql_fetch_assoc($result)) 
{ 
    $emparray[] = $row; 
} 
// no need to create additional variable 
//$object = $emparray; 
echo json_encode($emparray) ; 
Смежные вопросы