laravel数据库查询结果自动转数组修改实例

(编辑:jimmy 日期: 2024/10/5 浏览:2)

在项目中再次碰见laravel中从数据库中查询到的结果是对象,用toArray也不好用,之前改过一次,印象中是在/confing/database.php, 'fetch' => PDO::FETCH_OBJ,这行改为'fetch' =>FETCH_ASSOC就好用了,但是我现在做的这个是二次开发,那么如果这个改了,之前做的东西可能会出错,然后又找了找,查了查,结果是这样的

引用

use PDO;
 
DB::setFetchMode(PDO::FETCH_ASSOC);
 
$rs = DB::table('vrtourl') -> get();

就可以解决了。

PDO::FETCH_ASSOC //从结果集中获取以列名为索引的关联数组。
 
PDO::FETCH_NUM //从结果集中获取一个以列在行中的数值偏移量为索引的值数组。
 
PDO::FETCH_BOTH //这是默认值,包含上面两种数组。
 
PDO::FETCH_OBJ //从结果集当前行的记录中获取其属性对应各个列名的一个对象。
 
PDO::FETCH_BOUND //使用fetch()返回TRUE,并将获取的列值赋给在bindParm()方法中指定的相应变量。
 
PDO::FETCH_LAZY //创建关联数组和索引数组,以及包含列属性的一个对象,从而可以在这三种接口中任选一种。

另外的方法:

function objectToArray($object) {
 //先编码成json字符串,再解码成数组
 return json_decode(json_encode($object), true);
}
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。