CodeIgniter 技巧 - 通过 Composer 安装 CodeIgniter 框架并安装依赖包
PHP 项目中,通过 Composer 来管理各种依赖包,类似 Java 中的 Maven,或 Node 中的 npm。CodeIgniter 框架要想通过 Composer 自动加载包也很简单,步骤如下:
1. 安装 Composer
安装后,记得设置仓库源为国内镜像,否则下载速度太慢。
2. 安装 CodeIgniter
假设项目名为 test,切换到合适目录后,执行命令:
composer create-project codeigniter/framework test
在当前目录下会创建 test 目录,CodeIgniter 项目安装到这个 test 目录下。
3. 安装依赖包
切换到项目根目录,通过 composer require 命令安装所需包:
D:\lihongfeng\workspace\test> composer require lcobucci/jwt
Using version ^3.2 for lcobucci/jwt
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 1 install, 0 updates, 0 removals
- Installing phpunit/phpunit (5.7.27): Loading from cache
phpunit/phpunit suggests installing phpunit/php-invoker (~1.1)
phpunit/phpunit suggests installing ext-xdebug (*)
Writing lock file
Generating autoload files
安装后,Composer 会在当前目录中创建 vendor 目录及 composer.lock 文件:
D:\lihongfeng\workspace\jwt> tree .
文件夹 PATH 列表
卷序列号为 00000028 B233:DAE9
D:\LIHONGFENG\WORKSPACE\JWT
│ .editorconfig
│ .gitignore
│ composer.json
│ composer.lock
│ contributing.md
│ index.php
│ license.txt
│ readme.rst
├─.idea
├─application
├─system
└─vendor
其中 vendor 目录结构如下
├─bin
├─composer
├─doctrine
├─lcobucci
│ └─jwt
├─myclabs
│ └─deep-copy
│ ├─doc
│ └─src
│ └─DeepCopy
│ ├─Exception
│ ├─Filter
│ │ └─Doctrine
│ ├─Matcher
│ │ └─Doctrine
│ ├─Reflection
│ ├─TypeFilter
│ │ ├─Date
│ │ └─Spl
│ └─TypeMatcher
├─phpdocumentor
...
4. 设置 CodeIgniter
要想使用 Composer,需要修改 application/config/config.php:
$config['composer_autoload'] = 'vendor/autoload.php';
官方建议将 vendor 目录放在 application 目录中,项目迁移时复制整个 application 目录即可,比较方便。这时可以直接将上面的选项设置为 TRUE,CodeIgniter 框架会使用 application/vendor/autoload.php 这个默认路径。
但我们刚才通过 Composer 命令将依赖包安装在了项目根目录下,所以要自行填入路径 vendor/autoload.php。
5. 测试能否自动加载安装的包
参考每个包的文档,写几个测试方法即可。
CodeIgniter 技巧 - 通过 Composer 安装 CodeIgniter 框架并安装依赖包的更多相关文章
- 怎么安装Scrapy框架以及安装时出现的一系列错误(win7 64位 python3 pycharm)
因为要学习爬虫,就打算安装Scrapy框架,以下是我安装该模块的步骤,适合于刚入门的小白: 一.打开pycharm,依次点击File---->setting---->Project---- ...
- 编译安装php 5.5 缺少依赖包 及解决方案
必要时可以用 YUM 选择安装以下相关软件包: #yum install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel ...
- SAE 安装未包含的第三方依赖包
如何使用virtualenv管理依赖关系 当你的应用依赖很多第三方包时,可以使用virtualenv来管理并导出这些依赖包,流程如下: 首先,创建一个全新的Python虚拟环境目录ENV,启动虚拟环境 ...
- linux:apt-get 如何安装,查询,解除依赖包
apt-cache search package 搜索包 apt-cache show package 获取包的相关信息,如说明.大小.版本等 sudo apt-get install package ...
- ubuntu18.04 下 使用conda安装requirement.txt指定的依赖包
首先创建特定的虚拟环境 conda create -n temp_test python=3.5 conda install anaconda 切换到该环境 conda activate temp_t ...
- linux中用composer安装yii框架
我的服务器是安装的是lanmp环境 如果环境版本比较低的话,建议升级一下版本 升级版本命令:./lanmp.sh cus 全都选择最高的.完成之后: curl -sS https://getcompo ...
- salt源码安装软件和yum安装软件
上面简单列出了源码安装的sls文件书写思路. 涉及到一些固定的思路:如, 1,拷贝 解压安装时候需要依赖tar.gz存在 如果已安装则无需再次安装. 2,启动脚本 加入chk时候需要文件存在,如果已添 ...
- Android 源码编译环境搭建(64位Ubuntu)各种依赖包安装
1.准备: 普通PC(要求能上网), PC的操作系统Ubuntu 10.04 LTS(64位的),已经下载好的Android 1.6_r1的源代码. 2.Linux的依赖package安装: 为了更快 ...
- pip离线安装依赖包
pip安装离线本地包 导出本地已有的依赖包 pip freeze > requirements.txt 将依赖包下载到本地 # 下载到当前目录,指定pip源 pip download -r re ...
随机推荐
- getCurrentSession 与 openSession区别
getCurrentSession () 使用当前的session openSession()重新建立一个新的session 使用SessionFactory.getCurrentSession()需 ...
- vps配置ipv6地址
1.修改配置文件 vim /etc/network/interfaces 2.添加以下内容 auto he-ipv6 iface he-ipv6 inet6 v4tunnel address 2001 ...
- day17-django基础
3. Django框架 版本:1.11 创建: django-admin startprojcet xxx cd xxx python manage.py startapp app01 python ...
- HDU 4013 Distinct Subtrees(树的最小表示)
Distinct Subtrees Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65768/65768 K (Java/Other ...
- 2019牛客暑期多校训练营(第三场) - J - LRU management - 模拟
https://ac.nowcoder.com/acm/contest/883/J 根据这个数据结构的特点,也就是计算机组成原理里面学过的cache的LRU管理算法,每次访问都会在cache中查询一页 ...
- MongoDB与关系数据库的对比
MongoDB与关系数据库的对比
- ideamaven版的MBG逆向工程
一.简介 简称MBG,是一个专门为MyBatis框架使用者定制的代码生成器,可以快速的根据表生成对应的映射文件,接口,以及bean类. 支持基本的增删改查,以及QBC风格的条件查询. 但是表连接.存储 ...
- pandas数据读取(DataFrame & Series)
1.pandas数据的读取 pandas需要先读取表格类型的数据,然后进行分析 数据说明 说明 pandas读取方法 csv.tsv.txt 用逗号分割.tab分割的纯文本文件 pd.read_csv ...
- AOP技术介绍--(.Net中关于AOP的实现)
一.AOP实现初步 AOP将软件系统分为两个部分:核心关注点和横切关注点.核心关注点更多的是业务逻辑,关注的是系统核心的业务:而横切关注点虽与核心的业务实现无关,但它却是一种更通用的业务, ...
- Mybatis(三)MyBatis 注解方式的基本 用法
在 MyBatis注解 SQL 中,最基本的就是@Select.@Insert.@Update 和@Delete 四种.