1.添加Composer依賴包
Symfony中使用的依賴包管理工具是Composer,我們在開始安裝某個bundle之前,先到這個bundle對應的packagist (Packagist是Composer的官方倉庫,所有用Composer管理的包都在這裏可以找到)頁面去看看。
首先你需要做的是(去掉extension=php_openssl.dll這一行開頭的註釋),然後安裝或配置好composer.phar這個文件
最簡單的方法:下載Composer-Setup.exe文件來安裝(下載地址:https://getcomposer.org/download/)。在安裝過程中會有一個選擇你php文件的步驟(選擇你PHP項目的php.exe文件,比如:D:\wamp\bin\php\php5.4.12\php.exe)。
2.添加bundle到composer.json【也就是安裝第三方bundle】
1 2 3 4 5 6 7 | { ..., "require": { ..., "friendsofsymfony/user-bundle": "2.0.*@dev" } } |
一般三方bundle的安裝都會給我上面類似的代碼,當初我纔開始學安裝bundle時很不明白,給個這個在win的命令行下怎麼做;原來只需要在“php composer.phar”後將上面的代碼依次添加到後面即可! 也就是下面的寫法,幾種寫法均可:
更新依賴包
1 | $ php composer.phar update friendsofsymfony/user-bundle |
或執行更新所有依賴包
1 | $ php composer.phar update |
你可以直接執行下面的命令來完成一樣的工作:
1 | $ php composer.phar require friendsofsymfony/user-bundle:2.0.*@dev |
啓用bundle
到在前爲止,你已經在你的Symfony項目中安裝了friendsofsymfony bundle(它存放在 vendor/friendsofsymfony/ )且自動加載也配置了該類,現在需要做的是註冊bundle到AppKernel中:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | // app/AppKernel.php
// ... class AppKernel extends Kernel { // ...
public function registerBundles() { $bundles = array( // ..., new FOS\UserBundle\FOSUserBundle(), );
// ... } } |
配置bundle
通常一個bundle需要加載一些配置到你的應用的配置文件 app/config/config.yml 中。在你要使用的bundle的文檔中都會有關於配置的描述。但是你也可以通過 config:dump-reference 命令得到對應bundle的參考配置。
例如,看一下 assetic 的參考配置可以使用:
1 | $ app/console config:dump-reference AsseticBundle |
或使用:
1 | $ app/console config:dump-reference assetic |
輸出內容爲:
1 2 3 4 5 6 7 8 9 10 11 | assetic: debug: %kernel.debug% use_controller: enabled: %kernel.debug% profiler: false read_from: %kernel.root_dir%/../web write_to: %assetic.read_from% java: /usr/bin/java node: /usr/local/bin/node node_paths: [] # ... |
可能遇到相關問題:
1.也許在更新‘php composer.phar update’的時候,可能你會遇到這樣的錯誤:‘php composer.phar’不是內部命令,也不是可運行的程序或批處理文件。這是因爲composer.phar沒有安裝配置好
最簡單的處理方案是:下載Composer-Setup.exe文件來安裝(下載地址:https://getcomposer.org/download/)。
2.wamp下,安裝composer setup提示The openssl extension is missing的錯誤
解決方法:正確的做法是在php的安裝目錄比如說C:\wamp\bin\php\php5.3.3\中,找到這個目錄下的php.ini文件,(而不是wamp軟件設置裏打開,那沒用,軟件設置裏的php.ini文件是在apache密閉下的,而不是php安裝目錄),然後去掉extension=php_openssl.dll這一行開頭的註釋,之後就可以順利安裝Composer了。