在這裏我說一下小技巧 若是要學習 ThinkPHP 框架源碼,應該怎麼操做!php
IDE
在這裏我推薦你們使用 PHPStorm。備註一下,支持正版
laravel
PHPStorm 下載git
PHPStorm 激活方式github
這樣閱讀源碼的時候,只須要點擊一下就能夠跳轉到各個加載的文件sql
閱讀框架前,但願各位小夥伴瞭解一下 設計模式
,單例模式
,工廠模式
,註冊樹模式
等等docker
框架當中會有不少設計模式
,提早閱讀過會比較好理解。shell
不會問題也不大,我文章會詳細講解到的json
須要瞭解容器或者說是概念, 容器
,Facade
,依賴注入
, Aop
等等概念設計模式
好比從路由到邏輯代碼,一步一步的查看。瀏覽器
若是一次閱讀不懂,建議閱讀屢次,再遇到不懂的能夠直接百度,其實這些網上都有的
若是仍是不懂,就回到這個系列文章中來,我會一步一步拋出源碼內的代碼進行分析
在閱讀源碼的時候不要有太多的想法,好比 ThinkPHP
性能很差,ThinkPHP
是否是比 Yii
差,傳統的 php-fpm 是否是比不上 swoole 等等想法
咱們閱讀源碼是爲了提高自身的見識和優秀的代碼等等
對於框架選型,我認爲應該按照業務發展,人員技術,公司方向和開發成本考慮
按照本文章發佈的時間來算的話,官網是沒有 5.1 的發佈版本下載路徑的,最高爲 5.0.24 咱們能夠在 github 上下載到 5.1 的版本
ThinkPHP 官方 github
在這個上面能夠下載到最新版本和開發版本 5.1 和 6 版本均可如下載到
`composer` 下載,使用 `composer` 記得把鏡像地址修改成國內 # composer create-project topthink/think ThinkPHP5.1 `git` 方式下載 # git clone https://github.com/top-think/think.git ThinkPHP5.1
aliyun https://mirrors.aliyun.com/composer/ 推薦
tencent https://mirrors.cloud.tencent.com/composer/
huaweicloud https://mirrors.huaweicloud.com/repository/php/
cnpkg.org https://php.cnpkg.org
laravel-china https://packagist.laravel-china.org
方法 1:修改全局配置
打開終端並執行以下命令:
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ // OR composer config -g repo.packagist composer https://mirrors.huaweicloud.com/repository/php/
方法 2:修改項目配置
打開終端,進入你的項目的根目錄(也就是 composer.json 文件所在目錄),執行以下命令:
composer config repo.packagist composer https://mirrors.aliyun.com/composer/ // OR composer config repo.packagist composer https://mirrors.huaweicloud.com/repository/php/
這個訪問實際上是看你們下載的狀況,正常的話若是你們電腦有 php 版本就能夠運行了
固然也能夠用集成環境好比 lnmp
,phpstudy
,docker
這些
我用的是 composer
下載,直接用命令行運行的
訪問瀏覽器 http://127.0.0.1:8000/
推薦你們安裝 PHP xdebug 擴展 + phpstorm + 谷歌 xdebug 插件
你們加油!
好了各位,以上就是這篇文章的所有內容了,能看到這裏的人呀,都是人才。以前說過,PHP方面的技術點不少,也是由於太多了,實在是寫不過來,寫過來了你們也不會看的太多,因此我這裏把它整理成了PDF和文檔,若是有須要的能夠
更多學習內容能夠訪問【對標大廠】精品PHP架構師教程目錄大全,只要你能看完保證薪資上升一個臺階(持續更新)
以上內容但願幫助到你們,不少PHPer在進階的時候總會遇到一些問題和瓶頸,業務代碼寫多了沒有方向感,不知道該從那裏入手去提高,對此我整理了一些資料,包括但不限於:分佈式架構、高可擴展、高性能、高併發、服務器性能調優、TP6,laravel,YII2,Redis,Swoole、Swoft、Kafka、Mysql優化、shell腳本、Docker、微服務、Nginx等多個知識點高級進階乾貨須要的能夠免費分享給你們,須要的能夠加入個人 PHP技術交流羣