2022年11月22日12:25:42

composer require require-dev的使用场景

官方文档:
https://getcomposer.org/doc/04-schema.md#require

require
此包所需的包映射。除非可以满足这些要求,否则不会安装该软件包。

require-dev (root-only)
开发此包或运行测试等所需的包映射。默认安装根包的开发要求。安装或更新都支持 –no-dev 选项,以防止安装开发依赖项

举个例子:
我需要增加一个 composer require barryvdh/laravel-ide-helper,但是我希望在开发环境的时候需要安装,但是线上我就不需要安装这个插件

1,composer require --dev 表示将所要安装的依赖名放在”require-dev”下
2,composer install no-dev 表示只安装”require”中的依赖

实际操作:
composer require --dev barryvdh/laravel-ide-helper
如果代码上传到线上,执行
composer install no-dev

.env 配置文件APP_ENV的使用场景

中文文档:https://learnku.com/docs/laravel/8.x/configuration/9355

环境配置

对于应用程序运行的环境来说,不同的环境有不同的配置通常是很有用的。 例如,你可能希望在本地使用的缓存驱动不同于生产服务器所使用的缓存驱动。

Laravel 利用 Vance Lucas 的 PHP 库 DotEnv 使得此项功能的实现变得非常简单。在新安装好的 Laravel 应用程序中,其根目录会包含一个 .env.example 文件。如果是通过 Composer 安装的 Laravel,该文件会自动更名为 .env。否则,需要你手动更改一下文件名。

你的 .env 文件不应该提交到应用程序的源代码控制系统中,因为每个使用你的应用程序的开发人员 / 服务器可能需要有一个不同的环境配置。此外,在入侵者获得你的源代码控制仓库的访问权的情况下,这会成为一个安全隐患,因为任何敏感的凭据都被暴露了。

如果是团队开发,则可能希望应用程序中仍包含 .env.example 文件。因为通过在示例配置文件中放置占位值,团队中的其他开发人员可以清楚地看到哪些环境变量是运行应用程序所必需的。你也可以创建一个 .env.testing 文件,当运行 PHPUnit 测试或以 –env=testing 为选项执行 Artisan 命令时,该文件将覆盖 .env 文件中的值。

技巧:.env 文件中的所有变量都可被外部环境变量(比如服务器级或系统级环境变量)所覆盖。

这个需要配合nginx的配置在使用,刚开始我以为和java的模式一样,作为一个启动参数,但是好像不太一样

    location ~ \.php(.*)$ {
        fastcgi_pass   127.0.0.1:9001;
        fastcgi_index  index.php;
        fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        fastcgi_param  PATH_INFO  $fastcgi_path_info;
        fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
        fastcgi_param APP_ENV local;#三个选一个
	fastcgi_param APP_ENV dev;
	fastcgi_param APP_ENV prod;
        include        fastcgi_params;
    }

对应的配置文件是:
local -> .env
dev -> .env.dev
prod -> .env.prod

注意:
1,默认没有 fastcgi_param APP_ENV local;的,如果设置了非local的值,就是无法开启 APP_DEBUG=true的,所以在本地开发环境的时候,就不要写这个
2,fastcgi_param APP_ENV local;的配置是优先于APP_ENV=local,所以在使用的时候想清楚,如果线上需要debug就可能无法使用APP_DEBUG=true此配置来读取对应的配置文件

原文地址:http://www.cnblogs.com/zx-admin/p/16914759.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性