Yii是精心設計,使第三方庫可易於集成,進一步擴大Yii的功能。 當在一個專案中使用第三方函式庫,程式設計師往往遇到關於類別命名和檔案包含的問題。 因為所有Yii類別以C
字母開頭,這就減少可能會出現的類別命名問題;而且因為Yii依賴SPL autoload執行類別文件包含,如果他們使用相同的自動載入功能或PHP包含路徑包含類別文件,它可以很好地結合。
下面我們用一個例子來說明如何在一個Yii application從Zend framework使用Zend_Search_Lucene部件。
首先,假設protected
是application base directory,我們提取Zend Framework的發布文件到protected/vendors
目錄 。 確認protected/vendors/Zend/Search/Lucene.php
檔案存在。
第二,在一個controller類文件的開始,加入以下行:
Yii::import('application.vendors.*'); require_once('Zend/Search/Lucene.php');
上述程式碼包含類文件。因為我們使用的是相對路徑,我們需要改變PHP的包含路徑,以使檔案可以正確定位。這是透過在require_once
之前調用Yii::import
做到。 一旦上述設立準備就緒後,我們可以在controller action裡使用
類,類似如下:<pre class="brush:php;toolbar:false">$lucene=new Zend_Search_Lucene($pathOfIndex);
$hits=$lucene->find(strtolower($keyword));</pre>
以上就是Yii框架官方指南系列36——擴展Yii:使用第三方庫的內容,更多相關內容請關注PHP中文網(www.php.cn)!