<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ### 環境搭建 [TOC=4,6] ####composer什么鬼? 筆者在使用ThinkPHP老版本的時候,搭建環境時直接下載ThinkPHP的核心文件放在自己的項目中,然后按照教程中所說的搭建方式寫好index.php,運行后該入口文件自動生成項目目錄。而當我看教程中的ThinkPHP5環境搭建的時候還是有點很不習慣的,用Composer在Dos界面使用cmd下載核心文件。那么Composer究竟是個什么鬼呢? >[info] Composer 是 PHP5以上 的一個依賴管理工具。它允許你申明項目所依賴的代碼庫,它會在你的項目中為你安裝他們。 看了上面百度百科給的解釋,分析可以得出它是PHP5的一個工具,而不是針對ThinkPHP的,也就是說所有使用PHP5的項目都可以用它。而所有你想在項目中使用的依賴庫都必須在**composer.json**文件中寫明。好吧,下面我們來看看如何使用composer來下載ThinkPHP5的核心文件。 ####Composer下載和更新 參見[Composer安裝和更新](http://www.hmoore.net/thinkphp/thinkphp5_quickstart/145249#composer-) ####git 下載和更新 當然你也可以使用Git來安裝和下載ThinkPHP5的核心文件,使用Git的時候你首先要在本地的磁盤中新建一個空白的文件夾作為git倉庫,然后在DOS界面下進入這個倉庫目錄,最后使用Git命令來下載遠程的ThinkPHP5的核心文件,詳情參見[Git下載和更新](http://www.hmoore.net/thinkphp/thinkphp5_quickstart/145249#git-) 就筆者的使用來看,目前,Git要穩定以點,使用Composer下載和更新的時候經常會出現一些意外的錯誤,可能跟Composer的站點被墻有關。推薦使用Git。 好了,下載好了核心文件,就可以搭建我們的項目了,給我們的項目起個響亮的名字吧,我覺得DC這個名字很不錯。(其實是隨便起的) ####PHP運行環境搭建 不過,似乎PHP的運行環境還沒有,我們可以使用PHP的任一常用的運行環境。現在的環境基本都是多合一的,不僅包括網站服務,還包括數據庫服務和其它的一些服務,推薦使用**XAMPP**(Apache+MySQL+PHP+PERL),下載它的最新版本,然后安裝即可。安裝好了,把我們的項目放在你的安裝目錄下的htdocs文件夾中,這個文件夾也是XAMPP的網站發布的目錄。 ![](https://box.kancloud.cn/518b6c0ac9dbaa3a5871df3d846e3b02_504x171.png) ####入口文件 跟我們ThinkPHP其它版本相同,搭建好環境后就可以運行入口文件了。詳情參見[入口文件](http://www.hmoore.net/thinkphp/thinkphp5_quickstart/145249#u5165u53E3u6587u4EF6) 默認情況下,TP5將入口文件放在Public文件夾中,我們可以直接把它復制到項目根目錄下(一般的做法),也可以將服務器網站的根目錄設置為這里的Public文件夾(在apache的httd.conf 中可以設置)然后運行。 ####模塊(moudle)目錄 一般在ThinkPHP中會自帶**Index模塊**,包括控制器、模型、視圖等文件夾,而我們在開發項目的時候除了前臺的Index模塊還需要后臺的**Admin模塊**,以往在ThinkPHP的前述版本中我們需要手工的來添加它,包括它的子文件夾。在TP5中,我們可以直接使用命令來完成,是不是很炫酷? 切換到命令行模式下,進入到應用根目錄并執行如下指令: `php think build --module admin` 就會生成一個默認的admin模塊,包括如下目錄結構: ├─admin │ ├─controller 控制器目錄 │ ├─model 模型目錄 │ ├─view 視圖目錄 │ ├─config.php 模塊配置文件 │ └─common.php 模塊公共文件 同時也會生成一個默認的Index控制器文件。 下面來縱觀下看看項目中**application文件夾(主要程序目錄)**的目錄吧: ![](https://box.kancloud.cn/61f34aaba61c4801a5159e20b8d31e1a_204x419.png) ####數據庫配置 搭建環境完成以后,我們所做的第一件事情應該是將我們的數據庫配置到ThinkPHP5中。本系統使用Mysql數據庫,在項目的application文件夾的**database.php**中配置數據庫連接信息(TP5不再將數據庫配置放在config.php中了)。配置代碼如下: ~~~ return [ // 數據庫類型 'type' => 'mysql', // 服務器地址 'hostname' => '127.0.0.1', // 數據庫名 'database' => 'dc', // 用戶名 'username' => 'root', // 密碼 'password' => '******(您的數據庫連接密碼)', // 端口 'hostport' => '', // 連接dsn 'dsn' => '', // 數據庫連接參數 'params' => [], // 數據庫編碼默認采用utf8 'charset' => 'utf8', // 數據庫表前綴 'prefix' => 'tb_', // 數據庫調試模式 'debug' => true, // 數據庫部署方式:0 集中式(單一服務器),1 分布式(主從服務器) 'deploy' => 0, // 數據庫讀寫是否分離 主從式有效 'rw_separate' => false, // 讀寫分離后 主服務器數量 'master_num' => 1, // 指定從服務器序號 'slave_no' => '', // 是否嚴格檢查字段是否存在 'fields_strict' => true, // 數據集返回類型 array 數組 collection Collection對象 'resultset_type' => 'array', // 是否自動寫入時間戳字段 'auto_timestamp' => false, // 是否需要進行SQL性能分析 'sql_explain' => false, ]; ~~~ 配置好了數據庫連接后,我們就可以針對數據庫中的表寫與之對應的模型了,通過實例化這些模型來操作數據庫。 ####萬事具備 好了,做了上述操作后,我們項目的環境搭建就完成了,后面就是寫有用的業務代碼環節了。是時候可以說“Hello World!”了!
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看