【问题标题】:is Collection a Laravel instance or PHP instance?Collection 是 Laravel 实例还是 PHP 实例?
【发布时间】:2018-09-10 19:23:09
【问题描述】:

collection 一个 laravel 实例或 PHP 实例。 我总是听到人们说 Eloquent 返回一个 laravel 集合,所以我想要清除这个

【问题讨论】:

  • laravel.com/docs/5.7/collections - Illuminate\Support\Collection 类...”
  • 不知道,这个答案是否令人满意,但在 Laravel 中,集合是 PHP 集合的一种特定类型,通过附加功能扩展,最后,对于您的问题,它始终是一个PHP 实例...
  • @Bart 嗯,一个“PHP 集合”?你的意思是它扩展了 PHP 集合接口吗?如果是这样,那并不完全准确,因为 Laravel 的集合没有实现 PHP 集合接口。它确实实现了 Collection 接口中的大部分接口,但不是全部。无论哪种方式,我都同意它始终是一个 PHP 实例。 php.net/manual/en/class.ds-collection.php
  • @MMMTroy 你说得对,但我试图为这个问题提供一个简单的答案,以了解集合的基本概念,尤其是在 Laravel 中......

标签: php laravel laravel-5.2 laravel-5.1 laravel-5.3


【解决方案1】:

Laravel 中的 Collection 类是 Laravel 框架的一部分。因此,如果您尝试在纯 PHP 项目中使用 Collection 类(不使用 Laravel),您将无法默认使用 Collection 类。

你可以使用 Collection 类而不用使用所有的 Laravel。您会在 github 上看到它是 Illuminate/Support 组件的一部分。 https://github.com/illuminate

还有一些作曲家包可以自行为大家安装 Collection 类。 https://github.com/tightenco/collect。所以,我认为说它是“Laravel 实例”是不正确的,但除非你将它安装在你的项目中,否则你将无法访问没有 Laravel 的类。

Laravel 使用了很多 Laravel 没有自己编写的组件。交响乐,就是一个重要的例子。

【讨论】:

    猜你喜欢
    • 2017-02-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-25
    • 1970-01-01
    • 2012-01-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多