首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Laravel集合的简单理解

    例如我们需要通过一个水平线切分数组,将其分为2个及以上的数组个数。...「键」,再将另一个数组或者集合的值作为「值」合并成一个集合 concat 将给定的数组或集合值附加到集合的末尾 contains 判断集合是否包含给定的项目 count 返回该集合内的项目总数 dd 打印集合的项目并结束脚本执行...只留下那些通过给定真实测试的内容 first 返回集合中通过给定真实测试的第一个元素 groupBy 根据给定的键对集合内的项目进行分组 push 把给定值添加到集合的末尾 put 在集合内设置给定的键值对...sortBy 通过给定的键对集合进行排序。...排序后的集合保留了原数组键 where 通过给定的键值过滤集合 以上就是Laravel集合的简单理解的详细内容,大型PHP项目实战直播资料扫码加我获取,也可以(点击加群)获取学习资料 QQ图片20191120195111

    2.3K40

    你可能需要了解下Laravel集合

    前言 集合通过 Illuminate\Support\Collection 进行实例,Laravel的内核大部分的参数传递都用到了集合,但这并不代表集合就是好的。...例如我们需要通过一个水平线切分数组,将其分为2个及以上的数组个数。...只留下那些通过给定真实测试的内容 first 返回集合中通过给定真实测试的第一个元素 groupBy 根据给定的键对集合内的项目进行分组 push 把给定值添加到集合的末尾 put 在集合内设置给定的键值对...sortBy 通过给定的键对集合进行排序。...排序后的集合保留了原数组键 where 通过给定的键值过滤集合 致谢 感谢你看到这里,希望本篇能够帮助到你。谢谢,还不抓紧去练习下集合?

    1.6K30

    Laravel5.2之Redis保存页面浏览量

    Redis数据存储类型比较多,包括:字符串类型、哈希类型、列表类型、集合类型和有序集合类型,而不像MySQL主要只有三类:字符串类型、数字类型和日期类型。Redis可作缓存系统、队列系统。...$id; //Redis命令SISMEMBER检查集合类型Set中有没有该键,该指令时间复杂度O(1),Set集合类型中值都是唯一 $existsInRedisSet =...$existsInRedisSet){ //SADD,集合类型指令,向ipPostViewKey键中加一个值ip Redis::command('SADD...$id; //这里以Redis哈希类型存储键,就和数组类似,$cacheKey就类似数组名,$ip为$key.HEXISTS指令判断$key是否存在$cacheKey中...单独拿出来存入键值里如single_view_count,每一次都是给这个值加1,然后把这个值传入视图里 //或者平衡设置下postViewLimit和ipExpireSec这两个参数

    8.8K41

    通过 Laravel 查询构建器实现复杂的查询语句

    你一定有过这样的经历,从数据库获取指定查询结果后,以主键 ID 值为键,以某个字段值为值构建关联数组,以前,你可能不得不遍历查询结果构建数组才能解决这样的问题,在 Laravel 中,我们只需在查询构建器上调用...注意,我们在传递参数到 pluck 方法的时候,键对应的字段在后面,值对应的字段在前面。...in查询 IN 查询也很常见,比如我们需要查询的字段值是某个序列集合的子集的时候。...where 条件子句,它将会返回被连接的两个表的笛卡尔积,返回结果的行数等于两个表行数的乘积,如果带 where,返回的是匹配的行数。...('posts')->where('id', 'union($posts_a)->get(); 通过上面这段代码,我们将 views = 0 和 id 两个查询结果合并到了一起

    30.2K20

    Laravel 7.0中 timestamp 取出来的时间慢的8小时问题

    toJSON方法; 导致日期序列化格式不同; 修复问题 在基类模型中写入如下方法:写入当前模型也行,切勿改框架基类(如果改基类 composer update 就会没有了) /** * 为数组...: 'Y-m-d H:i:s'); } 其实Laravel 7.0升级说明中说了此问题:升级说明《Laravel 7 中文文档》(没有仔细看升级说明文档); 描述如下: 受影响可能性:高 在 Eloquent...模型上使用 toArray 或 toJson 方法时,Laravel 7 将使用新的日期序列化格式。...此外,该更改提供了更好的支持,并与客户端日期解析库集成。 此前,日期将序列化为以下格式:2020-03-04 16:11:00 。...: 'Y-m-d H:i:s'); } 该更改仅影响序列化为数组和 JSON 的模型和模型集合,对数据库中的日期没有影响。

    1.6K10

    Laravel Eloquent 模型关联关系(下)

    比如我们想要那些没有发布过文章的用户,可以通过 doesntHave 方法实现: $users = User::doesntHave('posts')->get(); 获取的结果也是模型实例集合:...此外,你还可以通过数组传递多个关联关系一次统计多个字段,还可以通过闭包函数指定对应统计的过滤条件: $post = Post::withCount(['tags', 'comments' => function...create/createMany 方法来插入关联数据,与 save/saveMany 方法不同的是,这两个方法接收的是数组参数: // 插入一条记录 $post->comments()->create...还是以文章和标签为例,要将两个本来没有关联关系的记录绑定起来,可以通过 attach 方法实现: $post = Post::findOrFail(1); $tag = Tag::findOrFail(...1); $post->tags()->attach($tag->id); // 如果中间表还有其它额外字段,可以通过第二个数组参数传入 // $post->tags()->attach($tag->id

    19.6K30

    3分钟短文:Laravel模型集合跟基类真不一样,别混为一谈

    引言 laravel在功能拆分上相当灵活,其中查询返回的数据集,虽然继承了基类集合, 但是有一些特定的方法和用法。很多小白在写的时候,往往分不清到底是用的哪个类的哪个方法,导致凭空报错。...代码时间 laravel系统的基类就是 Illuminate\Support\Collection,同时提供了一个快捷助手函数collect 用于实例化一个集合类。...该助手函数的代码很简单,就是new一个对象: new Collection($value); 比如有一个数组,将其实例化为一个集合类: $collection = collect([1, 2, 3]);...10; }); 上面说的方法都是链式可操作的,可以把操作一气呵成,比如返回数组中所有的偶数,并将所有元素乘以10,最后求和。...这与原始的集合的方法都有着本质的不同。系统自带的方法在复杂应用下不能满足多元化的需求, 我们这时就需要手动自建集合类,用于特定的操作。 比如在订单模型内,把所有已经支付的订单进行求和返回。

    1K40

    PHP 数组:索引数组与关联数组

    下面,我们就来简单介绍下 PHP 索引数组和关联数组的基本使用。 1、索引数组 基本使用 所谓索引数组指的是数组的键为隐式数字,并且会自动维护,就像静态语言的数组一样。...我们在 php_learning/basic 目录下创建 array.php 来存放本教程编写的代码,初始化两个 PHP 索引数组如下: <?...php $nums = [2, 4, 8, 16, 32]; $lans = ['PHP', 'Golang', 'JavaScript']; 此时,我们不必显式设置数组的键,它们会自动维护,如果通过...2、关联数组 基本使用 PHP 没有字典(map/dict)这种数据类型,而是将其融入到数组中以关联数组的方式提供支持,与索引数组不同,关联数组通常需要显式指定数组元素的键,还是以「Laravel 精品课...增删改查 关联数组的增删改查和索引数组类似,我们以 $book 为例,先初始化一个空数组: $book = []; 然后通过指定键值对来新增元素: $book['name'] = 'Laravel精品课

    5.8K20

    【Laravel系列4.2】查询构造器

    最后,通过一个 get() 函数就可以获得列表的信息。大家可以看到,在代码中我还使用了一个 toArray() 结尾,这样返回的就是一个数组。...它是 join() 或者 leftJoin() 这些 join 相关的函数都支持的一种形式,把第二个参数变成一个回调参数,然后在里面继续使用 on() 方法来进行多个外键条件的连接。...直接通过编辑器的跳转功能点击 update() 方法就会跳转到 laravel/framework/src/Illuminate/Database/Query/Builder.php 的 update(...这个就要一步一步来看了,前面其实我们已经看到了 laravel/framework/src/Illuminate/Database/Query/Builder.php 这个对象的类文件,那么我们是怎么通过.../MySqlConnection.php 连接对象。

    16.8K10

    3分钟短文:说说Laravel通用缓存Cache的使用技巧

    引言 前一期我们介绍了存储用户会话数据到服务器,并通过框架提供的Session类 进行数据读写操作的方法。...但是有些数据,如数据库集合,API接口等等,对于全局的用户来说是无差别的, 这时候我们需要全局缓存以便提供给所有的用户使用。 本期就来说说Cache缓存。...代码时间 laravel在设计上做了很巧妙的构思,将缓存相关的类,设计得有插接件的感觉。...比如文件类,只能是数组,链表,键值。而redis数据库则可以存储集合。这在使用的时候, 需要格外留意。...null); 如果是数组,系统推断用户是要通过助手函数设置缓存值了。 那就就用第一个位置参数数组的键作为缓存的键名,数组的第一个值作为缓存的值。

    2.1K00

    通过 Laravel Eloquent 模型实现简单增删改查操作

    ),并且在保存模型类时会自动维护这两个字段。...数据库连接 Eloquent 模型类默认约定的数据库连接是 config/database.php 中配置的默认连接,正如我们在连接配置教程中所说的那样,如果应用配置了多个数据库连接,可以通过 $connection...获取所有记录 我们可以通过模型类提供的 all 方法获取一张表的所有记录: $posts = Post::all(); 和查询构建器一样,该方法返回的也是集合,只不过是模型类集合: ?...Eloquent 提供的 destroy 方法一次删除多条记录,通过数组传递多个主键 ID 即可: Post::destroy([1,2,3]); 当然,你也可以通过查询构建器的方式删除指定记录:...本系列教程首发在Laravel学院(laravelacademy.org)

    8K20

    【Laravel系列4.4】模型Eloquent ORM的使用(二)

    这个对象就是我们的模型组件中的集合对象,它包含很多集合操作的方法,如果以最简单的角度理解的话,其实它就是帮我们封装了很多数组操作函数。 这个集合对象有什么作用呢?...比如说我们可以使用类似于 array_map() 的函数把集合中的对象全部转换成数组,还可以用一个类似于 array_column() 的函数只获取数据中的两个字段组成键值对形式的数据。...而另外一个 map() 函数就不用多说了,之前我们说过,Laravel 的 PDO 在默认查询构造器的情况下,走的是 PDO::FETCH_OBJ ,获得的集合结果中的每个数据都是一个 stdClass...当然,这个集合类相关的操作函数还有很多,这里我们只是演示了两个,具体的内容大家自行查阅一下官方手册。而源码呢?我也只给出具体的文件,大家自己去看看,里面的数组各种操作功能都非常经典。...laravel/framework/src/Illuminate/Collections/Collection.php 是集合类,里面的方法大部分都调用的是 laravel/framework/src/

    2.8K20

    如何使用 Laravel Collections 类编写神级代码

    好吧,让我们回顾一个简单的代码片段,来看看我们如何使用集合编写粗、快、猛的代码吧。 代码示例 让我们构建一个真实的世界。假设我们查询某些 API 接口并获取到如下以数组保存的结果集: 集合(Extending Collections) Collection 类,同其它 Laravel 组件一样,支持宏(macroable),就是说你可以给它添加方法随后使用。...让我们添加一个方法它会连接由数组提供的任意数量的字段并返回字符串结果: Collection::macro('toConcatenatedString', function ($fields = [],...whereRegex('/\s[A-Z]/', 'name') -> firstWhere('years', '>=', 5); 注意: 为了简单起见,我们的红仅仅适用于数组集合...需要注意的是,通过使用 Collection 类,您不仅可以获得一个方法库来简化编程工作,还可以选择一种从根本上改善代码的方法。

    2.2K20
    领券