首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Laravel Blade,在集合上使用pluck不返回数组

Laravel Blade是Laravel框架中的模板引擎,它提供了一种简洁、直观的方式来构建视图。在集合上使用pluck方法时,如果不返回数组,可能是因为集合中的元素不是标准的对象或数组。

pluck方法用于从集合中提取指定键的值,并返回一个包含这些值的新集合或数组。它可以接受一个或多个键作为参数,用于指定要提取的值。例如,我们可以使用pluck方法从一个用户集合中提取所有用户的姓名:

代码语言:txt
复制
$users = collect([
    ['name' => 'John', 'age' => 25],
    ['name' => 'Jane', 'age' => 30],
    ['name' => 'Bob', 'age' => 35]
]);

$names = $users->pluck('name');

// 输出结果:['John', 'Jane', 'Bob']

在上述示例中,pluck方法从$users集合中提取了所有用户的姓名,并将结果存储在$names变量中。

然而,如果在集合中的元素不是标准的对象或数组,pluck方法可能无法返回预期的结果。这可能是因为集合中的元素是简单的值,如字符串或数字,而不是具有键值对的对象。在这种情况下,pluck方法将无法提取值并返回数组。

为了解决这个问题,我们可以使用map方法在集合上进行转换,将每个元素转换为包含所需值的对象或数组。然后,我们可以使用pluck方法提取这些值。以下是一个示例:

代码语言:txt
复制
$collection = collect([1, 2, 3, 4, 5]);

$result = $collection->map(function ($item) {
    return ['value' => $item];
})->pluck('value');

// 输出结果:[1, 2, 3, 4, 5]

在上述示例中,我们使用map方法将集合中的每个元素转换为包含'value'键的关联数组。然后,我们使用pluck方法提取这些值,并将结果存储在$result变量中。

总结来说,如果在集合上使用pluck方法不返回数组,可能是因为集合中的元素不是标准的对象或数组。为了解决这个问题,我们可以使用map方法在集合上进行转换,将每个元素转换为包含所需值的对象或数组,然后再使用pluck方法提取这些值。

腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Laravel基础

, ['abcd']); laraevl内置函数dd,可人性化的打印数组:dd($result); 3.2 数据库操作 - 查询构造器 3.2.1 查询构造器简介 Laravel 查询构造器(query...')->insertGetId([ 'name' => '亲爱的路人', 'age' => 19 ]); 3、增加多条数据(注: 只能使用insert 返回新增结果) $result...- 查询指定字段数据 DB::table("表名")->pluck("字段名"); DB::table("表名")->where(条件)->pluck("字段名"); lists - 和 pluck...Student::where('id', '>', 1004)->delete(); 四、Blade模板引擎 4.1 Blade模板继承 <div class="header"...里所表达的内容 可以将其假设为一个占位符用子模版去实现它 区别: yield是不可扩展的(因为他只声明定义了一个视图片段没有任何内容) section既定义了视图片段,也可以有内容,还可以被子模版扩展 view

7.8K30

详解将数据从Laravel传送到vue的四种方式

在过去的两三年里,我一直研究同时使用 Vue 和 Laravel 的项目,每个项目开发的开始阶段,我必须问自己 “我将如何将数据从 Laravel 传递到 Vue ?”。...对于 Laravel 5.5+ 使用 json 指令: 使用自定义组件和 Laravel 自身的 json blade 指令可以让您轻松地将数据移动到道具中。...赞成: 整个 Vue 应用程序和任何其他脚本中全局可用 反对: 可能很混乱,通常建议用于大型数据 虽然这看起来有点老生常谈,但将数据添加到窗口对象中可以轻松地创建全局变量,这些变量可以从应用程序中使用的任何其他脚本或组件访问... API 的登录方法中,你将使用相同的 auth()- attempt 方法作为默认的 Laravel 应用程序,但从它返回的除外是你应该传递回的 JSON Web Token 令牌。...回到你的 Laravel 应用,你可以使用他们的令牌来引用特定用户的请求。将应该显示给他们的数据返回回去。 以上就是本文的全部内容,希望对大家的学习有所帮助。

8.1K31
  • laravel框架数据库操作、查询构建器、Eloquent ORM操作实例分析

    而且通过PDO绑定的方式避免SQL注入攻击,使用查询构建器时不必考虑过滤用户输入。...3.1、得到结果 lavarel查询的返回结果集合是StdClass,可以通过$res- name类似访问对象属性的方式访问返回值。...如果要查询整个表使用get(),查询表中一条数据使用first(),查询一条数据的某个字段用value(),查询表中所有数据的某个字段用pluck() //get()返回表中所有数据 $res=DB::...name字段的所有值 $res=DB::table('student')- pluck('name'); 当结果集中的数据过多时,可以通过分块的方式返回结果,chunk函数第一个参数为分块的大小(以每块...2个数据的方式返回结果),第二个参数为回调函数,当其返回false时就停止结果返回: DB::table('student')- chunk(2,function ($res){ foreach

    13.4K51

    详解laravelblade模板带条件分页

    答: Blade模板是Laravel提供一个既简单又强大的模板引擎; 和其他流行的PHP模板引擎不一样,他并不限制你视图里使用原生PHP代码; 所有Blade视图页面都将被编译成原生的PHP代码并缓存起来...Laravel 的分页器与查询构建器和 Eloquent ORM 集成在一起,并开箱提供方便的、易于使用的、基于数据库结果的分页。分页器生成的 HTML 兼容 Bootstrap CSS 框架。...渲染包含大数据的视图且不需要显示每个页码时这一功能非常有用: $users = DB::table('users')- simplePaginate(15); 显示分页结果 当调用 paginate...这些对象提供相关方法描述这些结果,除了这些辅助函数外,分页器实例本身就是迭代器,可以像数组一样对其进行循环调用。...知识点补充: Laravel框架中Blade模板的用法 1.

    7.3K30

    Laravel 视图使用入门

    1、Laravel 视图概述 我们之前几篇教程中定义的路由大多数返回的都是纯字符串文本或者字符串拼接的 HTML,这主要是为了测试方便,实际开发中,除了 API 路由返回指定格式数据对象外,大部分...视图是 MVC 模式中的 View 部分,大部分视图都应该是 HTML 格式文本, Laravel 中,支持三种格式的视图文件解析:CSS 文件,原生 PHP 和 Blade 模板(下一篇教程将会讨论...实际开发过程中,我们大多会使用 Blade 模板,因为其提供了丰富的语法从而简化了视图文件的编写。...2、视图返回与参数传递 Laravel 提供了多个语法糖路由中返回视图,如辅助函数 view 或 View::make 方法,还可以注入 Illuminate\View\View Factory 类(...', 'Laravel学院'); view()->share('siteUrl', 'https://xueyuanjun.com'); 然后就可以各个视图中使用 siteName 和 siteUrl

    5.3K50

    Laravel之collection

    Laravel 的 Collection 类其实有很多非常实用的方法,对于我们优化循环的时候非常的有用,我们的目标就是:不再写 foreach 循环 !...collect($arr)->pluck('order_products.*.price')->flatten(1)->sum(); 二、 格式化登机口 希望加深 map 的理解和 map 的应用场景...五、计算每月营业额 之前的示例当中,我们都是对一个数组进行优化和重构。这节学习使用 zip 方法来解决两个数组的情况。 ? ? ? ?...六、reduce 创建 lookup 数组 Laravel Collection 当中,还有一个非常常用的方法:reduce,这对于我们创建 lookup 数组的时候非常的有用,这样就可以使用...或者: collect($employees)->pluck('email','name') 七、计算订单汇总 处理订单问题的时候,会遇到各种各样的汇总问题,比如每天的销售额汇总,每天的供应商汇总等

    1.2K40

    laravel5.6框架操作数据curd写法(查询构建器)实例分析

    本文实例讲述了laravel5.6框架操作数据curd写法(查询构建器)。分享给大家供大家参考,具体如下: laravel5.6 数据库操作-查询构建器 <?...: $data = DB::table('users')- where('name','测试')- value('email'); //pluck() 方法获取单个列值的数组 $data = DB::table...('users')- pluck('name'); //count() 统计数量 $data = DB::table('users')- count(); //exists() 方法来判断匹配查询条件的结果是否存在...方法验证列值是否在给定值之间 $data = DB::table('users') - whereBetween('id', [1, 3])- get(); //whereIn 方法验证给定列的值是否在给定数组中...解决方法:找到config/database​.php mysql下面把’strict’ = true,改为false。[建议不要修改。写对正确操作语法。]

    2.2K30

    Laravel学习笔记(五)——视图,数据的外衣

    return view('student.index');//返回前台的index视图模板 return view('admin.index');//返回后台的index视图模板 数据传输 一般来说,Laravel...项目中单独返回一个视图的情况还是非常少的,通常都是视图+数据的方式展示浏览器。...Laravel中,都是控制器将数据传给指定的视图的。其中,控制器传递数据的时候有以下两种方式。 view函数第二个参数 第一种方式就是将数据作为view的第二个参数一并传输给指定的视图。...模板使用数据 对于传入的数据,模板是怎样整合到html当中的呢?这就是blade模板起到的作用了。...如果传入的数据为单一值,则在blade模板中只需要将变量放入{{}}中即可。如果传入的数据为数组,可以在数组后面用 -> 然后接数值名称表示某一数值。

    2.6K00

    Laravel中的Blade模板引擎示例详解

    Blade 模板引擎 Bladelaravel 提供的一个简单强大的模板引擎,它是把 Blade 视图编译成原生的 PHP 代码并缓存起来。...Blade 视图可以像原生 PHP 视图一样使用全局帮助函数 view 来返回渲染后的内容: Route::get('blade', function () { return view('child')...事实上,你可以 Blade echo 声明中使用任意的 PHP 代码:(Blade {{}} 声明中的内容是自动通过 htmlentities 方法过滤的,用来防止 XSS 攻击。)...-- Form Contents --> 尽管子视图会自动继承父视图中的所有数据变量,你也可以直接传递一个数组变量来添加额外的变量到子视图( Blade 视图中避免使用...Laravel 的 with 帮助方法,它只是简单的返回一个所提供的对象或值,并提供方便的链式调用。

    1.1K20

    laravel框架实现为 Blade 模板引擎添加新文件扩展名操作示例

    本文实例讲述了laravel框架实现为 Blade 模板引擎添加新文件扩展名。...之前我是使用的 XiaoLer/blade 这个从 Laravel 中抽离出来的 Blade 模板引擎,并且自定义为使用 .tpl文件后缀。...不过之前我是直接调用 FileViewFinder 类的 addExtension 方法来添加扩展名的,但是 Laravel 里就不能这样了。...这一行 this- extensions 里加上了一个 [extension = engine] 的数组,那么只要我们看看这个数组原先的定义,就可以知道这个 engine 是个啥子了: /** *...这下一切都水落石出了,如果你传入 .tpl 的同时传入一个 blade 的引擎,就是告诉 Blade,要把以 .tpl 为扩展名的文件用 Blade 模板引擎来解析。

    1.5K30

    Laravel 5.1 框架Blade模板引擎用法实例分析

    本文实例讲述了Laravel 5.1 框架Blade模板引擎用法。分享给大家供大家参考,具体如下: 为什么要使用blade 它是干什么用的?...中的@section(navi) home中也进行了补充 因为使用了@parent关键字,代表着覆盖父模板的代码片段 而是父模板的代码片段最后追加代码,当然啦 如果你要是去掉@parent关键字就会覆盖掉...1.2 引入一段代码 这也是blade相当强大的地方 当你写了一段HTML之后呢 发现其中有些内容别的页面下重用率很高,你完全可以把它抽出来放在另一个blade中,然后每当你要使用这段代码时使用@include...首先我们先来创建一个 some.blade.php(至于放在哪里随你便) : <p 这只是一个演示 所以浪费时间写太多的HTML</p 然后home中引用它吧: @extends('admin.layout...模板的变量,{{ }} 里是可以使用PHP代码的: <p 用户:{{ $name }}</p 第二种展示方法{!!

    91320

    laravel框架学习记录之表单操作详解

    2、blade中引入页面资源文件 虽然视图文件放在resources/views目录下,但是blade文件编译完成后将位于public目录下,所以其中的目录是相对于public而言的,页面所需要的静态资源应该放在.../js/app.js')}}" </script 3、laravel中实现分页 laravel中可以很便捷地实现分页数据显示,第一步是controller中分页取出数据库数据并传递给页面: return...后,controller中对其先进行验证,如果正确则存入数据库,否则返回到上一页面并抛出一个异常errors,页面中显示错误errors中的信息 //表单验证 $request- validate(...是你所需要的验证规则,中间用”|”隔开,详细的规则可以看文档 validate()第二个数组自定义验证出错后的提示信息,”:attribute”为占位符 validate()第三个数组自定义每个字段的提示名字...<p class="form-control-static text-danger" {{$errors- first('Student.name')}}</p 当验证失败返回到表单页面后,用户原来的输入信息会消失

    12.6K30

    Laravel框架路由与MVC实例详解

    分享给大家供大家参考,具体如下: 1、路由 路由的作用就是将用户的不同url请求转发给相应的程序进行处理,laravel的路由定义routes文件夹中,默认提供了四个路由文件,其中web.php文件定义基本页面请求...当我以get的方式请求http://localhost/Laravel/laravel52/public/req时,返回如下: ?...1.5、路由命名 有时需要给路由起个名字,需要在定义路由时使用as数组键来指定路由名称。...blade文件是laravel的一个模板引擎,它编译为PHP储存起来。它包含HTML语言,可以在其中直接使用PHP,例如login.blade.php: <!...laravel并没有定义models目录,一般可以app目录下新建一个models文件夹存放模板文件。

    2.7K50

    laravel 学习之路 数据库操作 查询数据

    运行 Select 查询 你可以使用 DB Facade 的 select 方法来运行基础的查询语句我们在上面创建的路由里增加个 index 的路由 dump 是 laravel 的打印函数可以把它理解为...select 方法将始终返回一个数组数组中的每个结果都是一个 StdClass 对象,可以像下面这样访问结果值 function index() { $data = DB...使用命名绑定 除了使用 ?...Laravel 的查询构造器使用 PDO参数绑定来保护您的应用程序免受 SQL 注入攻击。因此没有必要清理作为绑定传递的字符串 注意:PDO 不支持绑定列名。...获取一列的值 当然业务中有时候需要获取 某个字段 哪一列的值的集合,这个时候就用到了 pluck 方法,pluck 接受 2 个参数 第一个参数是我们要取的字段; 第二个字段是可以选的用来做 key

    3.2K20

    laravel框架模型和数据库基础操作实例详解

    , [1, 'Dayle']); 返回值: DB::statement('drop table users'); 返回自增id: $id = DB::table('users')- insertGetId...,[2,300])- get(); //多个条件 dd($student); //pluck()指定字段,后面不加get $student=DB::table("vipinfo")- pluck('vip_name...vipinfo")- chunk(2,function($students){ //每次查2条 var_dump($students); if(.......) return false; //满足某个条件下使用...新增数据、自定义时间戳、批量赋值 (1)使用save方法新增 laravel会默认维护created_at,updated_at 两个字段,这两个字段都是存储时间戳,整型11位的,因此使用时需要在数据库添加这两个字段...::destroy([10,5]); echo $num; //返回删除的行数 视频资源学习参考:http://www.imooc.com/learn/697 更多关于Laravel相关内容感兴趣的读者可查看本站专题

    2.8K20

    Laravel5.2之Validator

    概述: LaravelController.php文件中引用了trait为ValidatesRequests,这个trait源码/Illuminate/Foundation/Validation/...'); } 2、写表单视图页面 该方法直接返回一个表单提交页面,表单提交页面视图代码为,文件路径为resources/validator/validator.blade.php: <html...4、写显示验证错误信息视图 laravel中,laravel会在每次请求把errors变量刷到session中,和视图模板绑定,所以errors变量视图模板中可用,官方文档原话:"So, it is...@postValidator'); }); (二)、验证数组形式表单 有时候写表单时,需要同时输入相类似的表单输入时,可以把这些input作为数组看待,laravel5.2也提供了数组形式的验证...1、TestValidatorRequest类里写验证规则 authorize()方法主要用来设置用户权限,返回false时会返回一个403并且控制器代码不能执行,如没有权限的用户不能提交表单。

    13.3K31
    领券