草庐IT

composable

全部标签

php - Composer 建议的内部包方法

先介绍一些背景我们公司是一家只有四名开发人员的小型初创公司,正在开始将我们的产品重构为可重复使用的模块,以简化开发过程、提高生产力,并且在此过程中,我们希望在适当的地方引入单元测试。像往常一样,在小型初创公司中,我们不能浪费太多开发时间,但正如我们所见,这对于我们业务的中长期成功极为重要。目前,我们有两种最终用户产品。两者都是建立在我们自己的内部业务层之上的Laravel(PHP)应用程序,主要由web服务、restfulapi和庞大的数据库组成。此业务层为这些产品提供大部分数据,但每个产品的使用方式完全不同。除了维护和改进这两个即将完成的产品外,我们计划在不久的将来构建其他产品。为此

php - 使用composer检查php项目中已知漏洞的工具

我正在开发一个使用composer的php项目,但一些依赖项非常旧,包括php版本。我们正试图说服客户升级php的版本,并因此升级所有其他依赖项。我们想对现有的依赖项进行分析,并寻找这些依赖项的已知漏洞。是否有任何可用于运行dependencycheck的php工具??我已经使用bundleaudit对ruby​​项目完成了此操作但我没能找到类似的php工具。 最佳答案 好吧,有来自Roave(https://github.com/Roave/SecurityAdvisories)的Composer包,但是关于库的报告完全取决于项目

php - 指定 PHP 版本的 Composer 依赖

是否可以告诉composer只有在使用指定的PHP版本时才安装依赖项?原因:我的库使用了password_hash函数,5.5+可用,PHP5.4有兼容库ircmaxell/password-compat。然而,在PHP5.5+上安装这个库是完全没有意义的。那么,是否可以告诉Composer仅在让问题更清楚的短篇小说-我想告诉Composer:IFphpversion提前致谢。附言请仅发布如何执行此操作的直接答案,而不发布任何放弃5.4支持的解决方法或建议。我也可以想出它们,我在这里寻找智能解决方案:) 最佳答案 简短的回答是“这不

php - 使用 composer 只需要 1 个文件?

是否可以从一个composer包中只需要1个文件?我只需要一个包中的1个或几个文件,当我只使用几个文件时,要求包含数百个文件的整个包是没有意义的。是否可以通过composer做到这一点? 最佳答案 可以使用filesautoloadingstrategy在当前包中包含特定文件:{"autoload":{"files":["path/to/my/file.php"]}}如果您需要从使用composer安装的包中获取特定文件,这是不可能的。也不是真正需要的,因为文件不会加载到内存中,除非您在代码中使用它们。有关文件和其他自动加载策略的更

php - 强制 Composer 更新包

我开发了一个自定义的laravel包并将其放在GitHub上。我把它放在composer.json(下面的代码)中并且安装正常。我还没有关于它的版本信息,因为它仍在开发中。当我对我的包进行更改时(在单独的目录中),我提交并将更改推送到GitHub存储库。当我运行“composerupdate”时,我得到“没有要安装或更新的东西”。如果我从我的vendors目录中删除包并更新,那么我的包是从GitHub存储库安装的,具有最新的更改。但我希望能够从repo中提取/强制执行最新更改,而无需先从我的vendors目录中删除它,因为我对该包有其他依赖项,如果我删除它,我会从artisanclea

php - 无法加载非 Laravel Composer 包

这是我第一次尝试加载不使用Laravel服务提供者或外观的Composer包。我正在尝试安装这个包:https://github.com/mollie/mollie-api-php我已按照步骤使用Composer安装软件包。在我的Controller顶部,我添加了:require_oncebase_path('vendor/Mollie/API/Client.php');我收到以下错误:main():Failedopeningrequired'../vendor/Mollie/API/Client.php'(include_path='.:/Applications/MAMP/bin/

php - 使用Git和Composer处理PHP框架的组件之间的依赖关系的最佳方法

背景我正在用PHP开发框架。我从分别制作每个组件开始,以便可以独立于框架使用它们。创建四个库A,B,C和D后:没有依赖性B和C要求AD需要A,B和C现在,当发布一个库的新版本时,我遇到了一些问题,我可能不得不更改其他库的依赖关系,并且必须为其发布新版本。例如:新版本的A表示新版本的B,C和D。我查看了其他框架(如Symfony和Laravel)如何解决了此问题。我了解到他们正在使用Git的subtree功能和Composer的replace功能。它的工作方式如下:每个组件都在一个只读存储库中,带有自己的composer.json每个组件都可以需要其他组件,但不需要replace它们。框

php - 如何使用 Composer 生成的类映射添加不区分大小写的自动加载?

我有一个遗留项目,它在不同情况下有声明和类使用。我想将源代码升级到现代状态。首先,我想用composerautoloading替换遗留的autoloading。但是Composer不提供caseinsensitiveautoloading.如何使用composerclassmap和insensitiveautoload? 最佳答案 将classmap添加到composer.json。"autoload":{"classmap":["folder1/","folder2/"]},然后运行composer.phardumpautoloa

php - laravel 中的 Composer 是什么?

听起来很奇怪,但我认为composer是一种用于在PHP堆栈中安装包的工具。确保正确设置php环境的有效且可靠的方法。但我经常看到论坛帖子谈论缓存并建议执行composerclear-cache之类的操作,就好像它是实际运行的应用程序的一部分一样。就像它在正在运行的应用程序中积极地做事一样。我错过了什么吗? 最佳答案 Composer是PHP中的依赖管理工具。它允许您声明您的项目所依赖的库,它将为您管理(安装/更新)它们(引用link。它帮助我们为我们的应用程序安装/更新各种需求/组件,例如Laravel框架、Doctrine、lo

php - 如何强制 Composer 下载本地包?

假设我们有以下目录结构,我们假设my-package也存在于Packagist上:-apps\_my-app\_composer.json-packages\_my-package\_composer.json添加my/package作为my-app的依赖项,thedocumentation声明我们可以使用以下配置:{"repositories":[{"type":"path","url":"../../packages/my-package"}],"require":{"my/package":"*"}}然而,当我composerupdate时,依赖项仍然是从Packagist下载的