摘要:首先支持下黃老師的視頻網(wǎng)站轉(zhuǎn)型這篇的學(xué)習(xí)筆記也是根據(jù)他的視頻教程寫的,一共十集,講解的很簡(jiǎn)單感興趣的同志們可以上他視頻網(wǎng)站購(gòu)買視頻,網(wǎng)站地址放在文末我的博客作用自動(dòng)安裝所需要的模塊,自動(dòng)加載管理項(xiàng)目,發(fā)布到網(wǎng)上上去是默認(rèn)的加載組件地址安裝下
首先支持下黃老師的視頻網(wǎng)站轉(zhuǎn)型
這篇composer的學(xué)習(xí)筆記也是根據(jù)他的視頻教程寫的,一共十集,講解的很簡(jiǎn)單
感興趣的同志們可以上他視頻網(wǎng)站購(gòu)買視頻,網(wǎng)站地址放在文末
我的php博客:http://www.manyue.me
composer作用
1、自動(dòng)安裝所需要的模塊,自動(dòng)加載
2、管理項(xiàng)目,發(fā)布到packeglist網(wǎng)上上去(packgist是composer默認(rèn)的加載組件地址)
安裝
windows下
進(jìn)入 https://getcomposer.org/ 找到Composer-Setup.exe 下載安裝,安裝到php.exe文件夾下
安裝到phpstrom
進(jìn)入 https://getcomposer.org/ 找到composer.phar 下載
進(jìn)入phpstrom->file->setting->command Line Tool Support
點(diǎn)擊加號(hào),選擇composer。visibility選擇global,接著輸入composer.phar路徑確認(rèn)
安裝完畢
開始使用composer加載我們需要的第三方組件
通過建立composer.json文件告訴composer我們需要依賴哪個(gè)文件
該文件可通過命令行創(chuàng)建:composer init
json文件格式如下:
{ "name": "Administrator/composer-test", "repositories":[ { "type":"vcs", "url":"在github上要加載的模塊的git地址" }, { "type":"pera", "url":"xxx" }, { "type":"composer", "url":"xxx" } ], "require": { "zendframework/zendframework":"2.3.1" } }
【require】
首先說(shuō)說(shuō)require,packagist給出了三種寫法,冒號(hào)前是開發(fā)商和包的名字,冒號(hào)后是版本,參見下圖
我們要告訴composer我這個(gè)項(xiàng)目依賴哪個(gè)包(假設(shè)我們需要zendframework2的包)
先上https://packagist.org搜索zendframework2
將”zendframework/zendframework”:”2.3.1″ 輸入(開發(fā)商/包的名字:版本號(hào))
composer.json配置完后,在命令行執(zhí)行composer install,它會(huì)按照你的json文件配置自動(dòng)下載zf2框架,并實(shí)現(xiàn)自動(dòng)加載
用命令composer update更新要新加載的組件
(三種寫法)↓
【repositories】
如果我要用的組件不在packagist上,在github上怎么辦
先定義庫(kù)的地址(見上面代碼
原理是:如果我在require里定義要加載的庫(kù)在默認(rèn)的getpackagist.org上找不到,則會(huì)到repositoiries里定義的網(wǎng)站里找
加載自定義組件(自身組件)
仍然是在composer.json文件里配置
先建個(gè)類庫(kù),比如izumi/EventManager/EventManager.php(供應(yīng)商名+文件夾名+類文件)(phpflag規(guī)范規(guī)定類名和文件名必須是一樣的)
{ "name": "izumi/composer-test", "autoload":{ "psr-0":{ "izumi":"vendor" } } }
規(guī)定psr-0規(guī)則,izumi是廠商名(也是命名空間),vendor /表示供應(yīng)商所在的文件夾名
配置完成后執(zhí)行命令行composer install
加載位于vender下的沒有定義命名空間的類
比如在vendor下有個(gè)Tools.php
{ "name": "izumi/composer-test", "autoload":{ "psr-0":{ "Tools":"vendor" } } }
Tools表示是一個(gè)類,告訴composer這個(gè)類所在的文件夾是vendor
Tools不寫的話,會(huì)將vendor文件夾作為全局命名空間,vendor下的類會(huì)全部加載
自動(dòng)加載會(huì)有一定的性能消耗
可以用classmap來(lái)定義要加載類的絕對(duì)地址
"classmap":["vendor/izumi","vendor/Tools.php"]
自動(dòng)加載一個(gè)函數(shù)
比如在vendor/izumi/functions.php里寫個(gè)getTest方法
我們希望我們的每一個(gè)類都去調(diào)用這個(gè)functions.php的getTest方法
這時(shí)候我們可以定義files
"files":["vendor/functions.php"]
將自己寫的包提交到packagist
①首先這個(gè)包內(nèi)必須要有個(gè)composer.json文件(可以cd到該包內(nèi),執(zhí)行composer init命令)
②名字要小寫
③可以先將整個(gè)包提交到github上
④https://packagist.org/ 點(diǎn)擊submit package ,可以先通過github賬戶登錄網(wǎng)站
⑤輸入要提交包的git地址
讓你提交到packagist的包跟著github更新而更新
在github該包的頁(yè)面,點(diǎn)擊setting->webhooks&Services->Add service->輸入packagist->提示輸入github密碼->輸入token(在packagist.org點(diǎn)擊用戶名點(diǎn)擊Show API Token獲取token)
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/20823.html
摘要:此時(shí)我們就需要一個(gè)工具,能夠搭建私有源,里面都是私有倉(cāng)庫(kù),對(duì)內(nèi)不對(duì)外。就是官方提供的建立私有源的工具。在其它項(xiàng)目中使用私有源只需要在項(xiàng)目的文件的根上添加倉(cāng)庫(kù)地址之后再通過或者想要的倉(cāng)庫(kù)就可以了。 現(xiàn)在我們常用 Composer 進(jìn)行依賴管理。和其它語(yǔ)言的包管理工具一樣,Composer 使用 GitHub 托管代碼,可以根據(jù)配置文件管理依賴,也可以建立各種腳本,執(zhí)行特定任務(wù)。總之好處很...
摘要:更換源更新源使用的源通過安裝腳本安裝應(yīng)用所需要的依賴。 showImg(https://segmentfault.com/img/remote/1460000011106825); 有了第二篇《使用 Docker 搭建簡(jiǎn)易的 Java Web 環(huán)境 (二)》,懂了如何通過單一鏡像創(chuàng)建 Docker 環(huán)境,這篇主要學(xué)習(xí)如何使用「docker-compose」。目標(biāo)是:搭建 Laravel...
摘要:更換源更新源使用的源通過安裝腳本安裝應(yīng)用所需要的依賴。 showImg(https://segmentfault.com/img/remote/1460000011106825); 有了第二篇《使用 Docker 搭建簡(jiǎn)易的 Java Web 環(huán)境 (二)》,懂了如何通過單一鏡像創(chuàng)建 Docker 環(huán)境,這篇主要學(xué)習(xí)如何使用「docker-compose」。目標(biāo)是:搭建 Laravel...
摘要:高性能始終是的首要目標(biāo)之一。版是上代的老版本,現(xiàn)在處于維護(hù)狀態(tài)。版是一個(gè)完全重寫的版本,采用了最新的技術(shù)和協(xié)議,包括依賴包管理器代碼規(guī)范命名空間特質(zhì)等等。所以,我們學(xué)習(xí)版本。啟用本鏡像服務(wù)系統(tǒng)全局配置即將配置信息添加到的全局配置文件中。 工作中需要用到Y(jié)II框架,于是乎,系統(tǒng)的學(xué)習(xí)下這套框架,詳細(xì)教程請(qǐng)看考該站完整系列:YII2教程 一、YII簡(jiǎn)介 1、什么是YII Yii 是一個(gè)高性...
摘要:至于其他的算一般我習(xí)慣說(shuō)樹形模型,這里說(shuō)的概率模型可能是差不多的意思。 要點(diǎn) 不同工具之間版本匹配很重要由點(diǎn)及面,先實(shí)踐起來(lái)再學(xué)細(xì)節(jié)的原理和使用 技術(shù)棧 laravel5.5框架+scout組件+elasticsearch6.3.0搜索引擎 輔助 elasticsearch-head 查看集群數(shù)據(jù)可視化 中文分詞插件Ik 介紹 laravel是一款現(xiàn)代化的php框架es是搜索引擎e...
閱讀 3803·2021-11-17 09:33
閱讀 2020·2021-10-26 09:51
閱讀 1538·2021-09-29 09:44
閱讀 1688·2019-08-30 15:55
閱讀 1455·2019-08-30 15:52
閱讀 2333·2019-08-30 15:43
閱讀 3442·2019-08-29 17:00
閱讀 2310·2019-08-29 16:23