从零开始使用composer开发php项目解决各种包调用
写在前面
以前做php开发都是些比较简单的单页面实现小功能,偶尔也用到点别人造好的轮子,直接require一下就能搞起来了,结果最近做的个小需求从GitHub上clone了别人的一个轮子后发现都是composer写的自动调用,手工require就不可能了,于是还是认真突击补习一下composer的用法吧,下面开始记录一下使用composer下载安装最常用的smarty模板引擎以及一个处理数学公式计算的解析引擎的具体流程.
环境准备
win下面做开发有时候真的好难受,以前pip安装包的时候就经常出现各种诡异的失败,现在用composer也是一堆坑,最方便的还是直接上Linux吧,虚机装了个MajaroLinux,基于ArchLinux的开箱即用发行版,装的是xfce桌面版,系统装好了直接一条命令就把composer搞定了
$ sudo pacman -S composer $ composer config -g repo.packagist composer https://packagist.phpcomposer.com //更换使用国内的镜像源,速度快然后就是一键安装xampp全家桶,这里省略过程了,配置好httpd.conf里面的网站文档位置,我放在了/www,下面开始使用composer安装需要引用的包
$ cd /www $ composer require smarty/smarty $ composer require mossadal/math-parser //这个是解析数学公式的一个引擎,回头再单独介绍执行完安装后会在当前路径下生成以下文件:
[lpwm@lpwm-vm www]$ tree -L 2 . ├── composer.json ├── composer.lock └── vendor├── autoload.php├── composer├── mossadal└── smarty4 directories, 3 files这里主要需要注意的是vendor/autoload.php这个文件,项目后面入口文件中需要用到的就是它,直接require一下就把所有依赖都解决了,这当然也就是使用composer的方便之处了
开始撸代码
环境准备好了,就要开始正式撸代码的环节了,首先是需要手工造一个index.php入口文件,在这里调用smarty模板引擎渲染首页
造好的文件结构如下:
[lpwm@lpwm-vm www]$ tree -L 2 . ├── cache //smarty模板的缓存文件夹,手工创建,配置chmod 777权限 │ └── templates_c //smarty模板的缓存文件夹,手工创建,配置chmod 777权限 ├── composer.json ├── composer.lock ├── index.php //入口文件,手工创建 ├── vendor │ ├── autoload.php │ ├── composer │ ├── mossadal │ └── smarty └── views //smarty模板存放文件夹,手工创建└── index.html //首页模板文件,手工创建7 directories, 5 filesindex.php
<?php define('SITE_ROOT', str_replace('\\', '/', __DIR__)); require './vendor/autoload.php'; //-----划重点----- 这里require单个autoload.php文件就可以解决所有包依赖$smarty = new \Smarty; $smarty->left_delimiter = "{{"; //解决和js冲突的问题 $smarty->right_delimiter = "}}";$smarty->setTemplateDir(SITE_ROOT . '/views/'); $smarty->setCompileDir(SITE_ROOT . '/cache/templates_c/'); $smarty->setCacheDir(SITE_ROOT . '/cache/');$smarty->assign('title','This is my first Composer Project!'); $smarty->display('index.html'); ?>views/index.html
<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title> </head> <body><h1>{{$title}}</h1> </body> </html>主要的流程就是这样了,启动xampp,开浏览器瞅一下,Perfect!
总结
以上是生活随笔为你收集整理的从零开始使用composer开发php项目解决各种包调用的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 杰理之GPIO汇总【篇】
- 下一篇: php 获取带宽,php使用网络攻击占用