我有一個名爲'plan_test'的MySQL數據庫,其中包含名爲(5a,5b,5c ...)的表。這些表具有相同的列和多行。我已經設置了一個擁有權限的用戶來完成數據庫的所有工作。這裏是我的PHP代碼,它應該返回一個JSON格式化字符串,我可以讀以後:不能編碼我從PHP腳本得到的輸出數組到Json
<?php
$servername = "localhost";
$username = "tester";
$password = "abc123";
$dbname = "plan_test";
$sql = "select * from plan_test.5a";
$con = mysqli_connect($servername,$username,$password,$dbname);
mysqli_set_charset($con,"utf-8");
$result = mysqli_query($con,$sql);
$response = array();
while($row = mysqli_fetch_array($result)){
array_push($response,array("Klasse"=>$row[0],"Tag"=>$row[4],"Monat"=>$row[5],"Stundenanfang"=>$row[7],"Stundenende"=>$row[8],"Art"=>$row[9],"Fach"=>$row[10],"Lehrer"=>$row[11],"sFach"=>$row[12],"sLehrer"=>$row[13],"Raum"=>$row[14],"Bemerkung"=>$row[15]));
}
echo json_encode(array("test"=>$response));
mysqli_close($con);
?>
我得到一個空白網站出來的,當我運行
var_dump($response);
我得到這個:
array(3) {
[0]=>
array(12) {
["Klasse"]=>
string(2) "5a"
["Tag"]=>
string(2) "19"
["Monat"]=>
string(1) "5"
["Stundenanfang"]=>
string(1) "1"
["Stundenende"]=>
string(1) "2"
["Art"]=>
string(10) "Vertretung"
["Fach"]=>
string(1) "E"
["Lehrer"]=>
string(2) "VH"
["sFach"]=>
string(1) "E"
["sLehrer"]=>
string(2) "AL"
["Raum"]=>
string(3) "113"
["Bemerkung"]=>
string(1) "�"
}
[1]=>
array(12) {
["Klasse"]=>
string(2) "5a"
["Tag"]=>
string(2) "19"
["Monat"]=>
string(1) "5"
["Stundenanfang"]=>
string(1) "3"
["Stundenende"]=>
string(1) "4"
["Art"]=>
string(10) "Vertretung"
["Fach"]=>
string(4) "SCHW"
["Lehrer"]=>
string(2) "WE"
["sFach"]=>
string(4) "SCHW"
["sLehrer"]=>
string(2) "TO"
["Raum"]=>
string(3) "AH2"
["Bemerkung"]=>
string(1) "�"
}
[2]=>
array(12) {
["Klasse"]=>
string(2) "5a"
["Tag"]=>
string(2) "19"
["Monat"]=>
string(1) "5"
["Stundenanfang"]=>
string(1) "3"
["Stundenende"]=>
string(1) "4"
["Art"]=>
string(10) "Vertretung"
["Fach"]=>
string(4) "SCHW"
["Lehrer"]=>
string(2) "RR"
["sFach"]=>
string(4) "SCHW"
["sLehrer"]=>
string(2) "WI"
["Raum"]=>
string(3) "AH1"
["Bemerkung"]=>
string(1) "�"
}
}
由於某種原因,這個數組沒有被編碼爲json格式。 如何將此數組編碼爲json字符串?
順便說一句,從'Bemerkung'的未定義的字符串是爲了在那裏。
echo $ json = json_encode($ response); ? – Blueline
其中'var_dump()'? –
@Blueline nope .. – erri120