Cet article vous apporte une compréhension simple des collections Laravel. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.
Avant-propos
Les collections sont instanciées via IlluminateDatabaseEloquentCollection Le noyau de Laravel utilise des collections pour la plupart des transferts de paramètres, mais cela ne signifie pas que les collections sont bonnes. Laravel est un framework de développement rapide et élégant pour une certaine raison, et non à cause de son routage, de sa base de données, de ses écouteurs, etc. Lorsque vous devez traiter un ensemble de tableaux, vous en aurez peut-être besoin pour vous aider à résoudre rapidement des problèmes pratiques.
Créer une collection
$collection = collect([1, 2, 3]);
Évidemment, c'est une opération très simple S'il vous plaît arrêtez de dire "cette opération est compliquée", c'est plus C'est similaire à. la méthode de déclaration de la première version de PHP5.x.
$collection = array(1,2,3);
Laravel ne fait rien de compliqué pour les collections.
Retour au prototype
Si vous souhaitez convertir la collection en données, la méthode d'utilisation est également très simple
collect([1, 2, 3])->all(); ------> [1, 2, 3]
Mais Considérez qu'en termes de performances, vous pouvez utiliser les collections Laravel, après tout, cela vous aidera à effectuer 90% du travail des opérations sur les tableaux.
Par exemple, nous devons couper un tableau par une ligne horizontale et le diviser en 2 tableaux ou plus. Vous pouvez utiliser des collections pour faire ~
$collection = collect([1, 2, 3, 4, 5, 6, 7]); $chunks = $collection->chunk(4); $chunks->toArray(); // [[1, 2, 3, 4], [5, 6, 7]]
Et certaines méthodes sont conçues sur la base de la méthode de requête des instructions SQL. Jetons un coup d'œil aux plus spécifiques.
Liste des méthodes
Voici quelques méthodes d'opération de collecte couramment utilisées. Veuillez vous référer au site officiel pour plus de détails et les détails complets.
方法 | 注释 |
---|---|
all | 将集合打回原型 |
average & avg | 计算平均值 |
chunk | 将集合拆成多个指定大小的小集合 |
collapse | 将多个数组的集合合并成一个数组的集合 |
combine | 可以将一个集合的值作为「键」,再将另一个数组或者集合的值作为「值」合并成一个集合 |
concat | 将给定的数组或集合值附加到集合的末尾 |
contains | 判断集合是否包含给定的项目 |
count | 返回该集合内的项目总数 |
dd | 打印集合的项目并结束脚本执行 |
diff | 将集合与其它集合或纯 PHP 数组进行值的比较,然后返回原集合中存在而给定集合中不存在的值 |
each | 迭代集合中的内容并将其传递到回调函数中 |
filter | 使用给定的回调函数过滤集合的内容,只留下那些通过给定真实测试的内容 |
first | 返回集合中通过给定真实测试的第一个元素 |
groupBy | 根据给定的键对集合内的项目进行分组 |
push | 把给定值添加到集合的末尾 |
put | 在集合内设置给定的键值对 |
sortBy | 通过给定的键对集合进行排序。排序后的集合保留了原数组键 |
where | 通过给定的键值过滤集合 |
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!