php - 如何在返回之前向数据库查询添加属性?

标签 php mysql database laravel eloquent

所以我有这样的东西:

$comments = Comments::select('id', 'topic', 'parent_id', 'username', 'comment', 'upvotes', 'created_at', 'updated_at')
        ->where('topic', '=', $topic)
        ->get();

// I'd like to add a human readable datetime difference like
// 1 day ago, 2 days ago, etc. before I return the $comments variable here.

return json_encode($comments);

对于单行我会做这样的事情:

$comment->created_at->diffForHumans();

如何向所有行添加额外的属性,例如carbon_date?

最佳答案

循环遍历 $comments 数组并将属性添加到每个元素。

foreach ($comments as $comment) {
    $comment->carbon_date = $comment->created_at->diffForHumans();
}

关于php - 如何在返回之前向数据库查询添加属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47273661/

相关文章:

php - 在sql查询中使用组后如何获取订单输出?

php - 如何将 PHPExcel 生成的文件从 PHP 页面传递到另一个 PHP 页面?

mysql - 从mysql表中删除行

php - 对于 Mysql 和 PHP 中的 UTF-8,我真的需要从 VARCHAR 切换到 VARBINARY 吗?

mysql - 用于创建数据库并允许远程访问的 PHP 脚本不起作用

python - SQLAlchemy StaleDataError 删除通过 ORM sqlalchemy.orm.exc.StaleDataError 插入的项目

php - 如何在 echo 中设置文本样式?

php - Mysql 连接多列

MySQL 索引 : inverted or forward

rdbms - 什么是用于归档的良好 DBMS?