这令我感到沮丧,我正在寻求帮助。我非常了解PHP 4.x,以及PHP 5.x的大部分内容。我遇到麻烦的是Composer。
如果这看起来像一个简单的问题,请原谅我,但是我为自己试图解决这个问题感到沮丧。
我知道它取代了include();
和require();
,它可以在文件中加载所有PHP脚本(而不是单独列出每个脚本)。
我在一个共享的托管环境中,不能(至少到目前为止)Composer,这只会增加我的挫败感。
这是我的composer.json文件:
{
"name": “php/webapp”,
"type": "project",
"description": "A php web application”,
"keywords": [“php”],
"homepage": "https://github.com/xxx”,
"license": "MIT",
"require-dev": {
"php": ">=5.5.0",
"phpmailer/phpmailer": "~5.2",
},
"autoload": {
"psr-4": { "": ["application/engine/“, "application/calculations/“] }
}
}
我有3个问题:
提前谢谢。
答案 0 :(得分:2)
是的,只要服务器的PHP安装/插件等满足您的要求。您的托管公司可以帮助您,但在大多数情况下,这不是问题。如果您无法在命令行上访问Composer,则可以在项目中install it locally。
官方basic usage guide是开始的好方法
autoloading section解释了如何使用单个require
声明启动它
在Packagist上浏览有趣的包,并在命令行中使用composer
来安装,升级和删除它们。单击任何包的Github链接以查看良好的文档,示例代码和测试。
当您将代码提交到存储库时,请务必检查Composer的.gitignore
添加文档。
享受!
答案 1 :(得分:0)
Composer可以安装在共享托管环境中。但问题可能最终是你如何在共享托管环境中使用它。如果您在共享托管环境中进行活动开发,那么您可能希望确保具有命令行访问权限,以便composer install
和composer update
。如果开发是在本地完成并传递到共享环境,那么只需提供已安装的代码。实际的composer.phar不是必需的。
什么是good
有点意见。 getcomposer.org网站是如何最好地使用它的来源,https://getcomposer.org/doc/01-basic-usage.md是一个非常好的开始。
此后不确定你到底是什么。要使作曲家可以访问自动加载的文件,您需要require __DIR__ . '/vendor/autoload.php'
。请参阅https://getcomposer.org/doc/01-basic-usage.md#autoloading。
正如@Dagon所提到的,你的.json中有一些卷曲的引号,常规的双引号应该是。