gpt4 book ai didi

php - 尝试让 json_encode 返回行名称以及 mysql 表中的数据

转载 作者:行者123 更新时间:2023-11-29 22:55:59 24 4
gpt4 key购买 nike

我正在尝试以 JSON 格式返回数据。所需的格式如下...

{ "projects" : [
{
"title":"title 1",
"image":"Image1",
"subtitle":"subtitle 1",
"about":"Blah Blah Blah"
},
{
"title":"title 2",
"image":"Image2",
"subtitle":"subtitle 2",
"about":"Blah Blah Blah"
}
]}

下面的代码从数据库获取数据并将其作为 JSON 数据返回到 View 中。我的总体目标是以正确的 JSON 格式返回此数据,以便我可以使用 View 中的 Mustaches 模板工具对其进行查询。当我将值设置为行时,下面的代码可以完美运行,例如..

$userInfo["projects"][] = array("title" => $row[0], "subtitle" => $row[1], "about" => $row[3]);

但是我不想使用此方法,因为我希望响应自动返回行名称和数据。原因是,如果用户向数据库添加新行,它将自动返回响应,而无需在代码中手动添加另一行。

下面的代码是我的 api.php 文件。

function customError($errno, $errstr) {
echo "<b>Error:</b> [$errno] $errstr";
}
//set error handler
set_error_handler("customError");

$host = "localhost";
$user = "root";
$pass = "root";

$databaseName = "laravel";
$tableName = "projects";
//$row ='';

$con = mysqli_connect('localhost','root','root');

$return = new stdClass();
$return->projects = array();

$result = mysqli_query($con,"SELECT * FROM $tableName");

if($result !== false) {
while($row = mysqli_fetch_object($result)){
$return->projects[] = $row;
}
}

//echo '<pre>';
//print_r($return);
//echo '</pre>';

echo json_encode($return);

当我执行 echo '<pre>' 时上面(当前已注释掉)我得到以下结果。

    stdClass Object
(
[projects] => Array
(
)

)

下面是我将数据回显为 JSON 时的结果。有人可以帮我吗?

{"projects":[]}

预先感谢您提供任何建议或提示。

最佳答案

你应该使用mysql_fetch_assoc因此您将使用列的名称作为索引,而不是数字

关于php - 尝试让 json_encode 返回行名称以及 mysql 表中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28721779/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com