从零开始使用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汇总【篇】
- 下一篇: python requests瓜子二手车