php - Laravel 使用 concat with pluck 方法

标签 php laravel laravel-5 concatenation pluck

我正在使用 Laravel.5.3,以下是我的查询

$ProjectManagers = Employees::where("designation" , 1)
->pluck(DB::raw('CONCAT(first_name," ",last_name) AS name'),'id');

这引发了一个错误

Illegal offset type in isset or empty



我可以知道这是否是正确的方法吗?

如果我不使用联系人并使用类似
$ProjectManagers = Employees::where("designation" , 1)->pluck('first_name','id');

这是工作正确并给我结果
Illuminate\Support\Collection Object
(
    [items:protected] => Array
        (
            [8] => Punit
        )

)

预期结果:
Illuminate\Support\Collection Object
(
    [items:protected] => Array
        (
            [8] => Punit Gajjar
        )

)

其中名字和姓氏连接在一起。

最佳答案

尝试将 eloquent 查询更改为:

$ProjectManagers = Employees::select(
            DB::raw("CONCAT(first_name,' ',last_name) AS name"),'id')
            ->where('designation', 1)
            ->pluck('name', 'id');

关于php - Laravel 使用 concat with pluck 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40132046/

相关文章:

PHP: undefined offset :0,但不是 dd()

iis-7 - php.ini 未被 Windows 7 安装读取

mysql - 从 Laravel 中的多个表中排序

Laravel 平均值为空值

php - Laravel 5 上的 Compiled.php 中的 InvalidArgumentException

php - Laravel Spatie 角色和权限 : How to change default tables?

php - 随机播放前 20 个准备好的语句结果

php - 在 SQL 中使用 LIKE 运算符时合并字段

php - Apache URL 重写 & 所有请求均由同一 PHP 文件运行

php - 从控制台脚本获取 web php.ini 文件的值