本文概述
- 要求
- 1.你项目的Init Composer
- 2.安装一些库进行测试
- 3.在项目配置中注册composer自动加载器
基于Symfony 1.4的旧项目通常使用.tar或.zip文件分发, 因此你无法快速安装 Composer库。但是, 有可能这样做, 我们将在本文中向你展示。
要求为了使用本文在旧版Symfony 1.4上实现composer, 你将需要Composer的基本知识(它的工作方式), composer的安装以及一个演示项目来对其进行测试。
1.你项目的Init Composer对于使用composer的每个项目, 要做的第一件事是在项目的根目录上创建composer.json文件。你可以使用以下命令通过命令行以交互方式创建它:
composer init
或者, 至少使用以下结构手动创建它:
{
"name": "ourcodeworld/projectname", "type": "project", "authors": [
{
"name": "Your Name", "email": "youremail@youremail.com"
}
], "require": {}
}
请注意, 到目前为止, 还没有可以包含在项目中的自动加载器文件, 也没有composer.lock文件。要创建自动加载器, 你需要安装所需的第一个库。
2.安装一些库进行测试作为在你的项目中实现composer的下一个基本步骤, 只需启用composer的autoloader.php文件就足够了。但是, 在启用此功能之前, 该文件必须存在!这就是为什么你需要先安装一些库才能创建提到的文件的原因。在这种情况下, 如Composer的官方教程中所示, 我们将在项目中安装monolog软件包:
重要切记安装要使用的库版本, 该版本与Symfony 1.x需要的PHP版本兼容, 例如PHP 5.3.3。
composer require monolog/monolog
这将在项目的根文件夹中创建/ vendor文件夹, 安装后将在其中放置所有库, 在这里你还将找到自动加载器。
3.在项目配置中注册composer自动加载器现在已经存在composer的自动加载器文件, 你可以使用require_once将其包含在项目配置文件(yourproject / config / ProjectConfiguration.class.php)中:
<
?phprequire_once dirname(__FILE__) . '/../symfony-1.4.20/lib/autoload/sfCoreAutoload.class.php';
// In this file register the autoloader of composer using the following line:
require_once __DIR__.'/../vendor/autoload.php';
sfCoreAutoload::register();
class ProjectConfiguration extends sfProjectConfiguration {public function setup() {
// Your original code
}
}
之后, 使用php symfony cache清除缓存:clear并尝试从Symfony项目上的任何控制器, 模型, 窗体使用新库
【如何在Symfony 1.4上使用Composer安装Packagist库】编码愉快!
推荐阅读
- 每个Twig开发人员都应该能够回答的20个问题的答案和解释
- 如何使Symfony Project 1.4.20与PHP 5.5或5.6完全兼容(不推荐使用(preg_replace()警告))
- 添加自定义android webview错误页面
- 为什么我的android studio 3.5.3中缺少“ app”文件夹
- 以HTML集成WhatsApp jQuery
- [在新计算机上运行项目或删除数据库文件夹时,未在Android Studio中创建SQLite数据库
- 文件的目录查找失败…在操作系统中。 …找不到App_Data /…mdf
- Github页面和React App不管使用什么方法都无法工作
- 如何使用Android的Camera2 API