Yii中引出php文件及插件

WBOY
リリース: 2016-06-13 10:49:20
オリジナル
917 人が閲覧しました

Yii中引入php文件及插件
作者:zccst
一、设置环境变量(在PHP)

echo get_include_path();       //获取当前所有环境变量。即该项目中那些代码已被引用。
set_include_path('.'. PATH_SEPARATOR . Yii::app()->basePath.'/lib/PHPExcel' . PATH_SEPARATOR . get_include_path());  //新增一个环境变量,写在最前面。
echo get_include_path();

通过两次差别,可以看出,使用set_include_path()函数,设置新的环境变量成功。

二、在YII中引用

1,Yii::import("application.lib.PHPExcel.*");
解释:
application相当于protected文件夹。


2,在yii的../config/main.php中,引入基路径

return array(	'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..',  ......    // autoloading model and component classes	'import'=>array(		'application.models.*',		'application.components.*',		'application.helpers.*', // helper methods		'ext.mail.Message',		'application.lib.*',	),)
ログイン後にコピー

在代码中可以使用下面方式引用
Yii::app()->basePath


3,在controller使用
//引入PHPExcel相关文件require_once 'PHPExcel.php';require_once 'PHPExcel/IOFactory.php';require_once 'PHPExcel/Writer/Excel2007.php';require_once 'PHPExcel/Writer/Excel5.php';
ログイン後にコピー


三、在Yii中引用插件
注:插件和扩展不一样
1,源码放在project/ckeditor/*
2,在代码create,update中引用
<?phpinclude_once "/ckeditor/ckeditor.php";// Create a class instance.$CKEditor = new CKEditor();// Path to the CKEditor directory.$CKEditor->basePath = Yii::app()->baseUrl.'/ckeditor/';// Replace a textarea element with an id (or name) of "textarea_id".$CKEditor->replace("News_content");?>
ログイン後にコピー


引入插件方法二:
第一,比如说,我们要使用 Zend framework的东西。我们把zend framework解压到 prtected/vendors里面,现在的文件夹为 protected/vendors/Zend/Search/Lucene.php

第二,在controller文件的头部,插入下面代码。
Yii::import(’application.vendors.*’);
require once(’Zend/Search/Lucene.php’);
上面代码包含了Lucene.php这个类文件。因为我们用到的是相对路径,所以我们需要改变PHP加载文件的路径,Yii::import 一定要在require_once 之前。

第三,一旦我们设置好了,我们就可以在controller里面使用了。比如说
$lucene=new Zend Search Lucene($pathOfIndex);
$hits=$lucene->find(strtolower($keyword));



四、在一个页面中引入任意其他文件
比如,想在../controllers/OutsourceController.php直接使用../components/RMSClient.php,可用如下方法
require_once(dirname(__FILE__)."/../components/RMSClient.php");//注意以下方式引入,提升找不到require_once(Yii::app()->baseUrl . "/protected/components/RMSClient.php");//原因:include、require包含的是服务器上的文件路劲,和url没有直接关系。//如果想用yii::app()方式,可以使用../config/main.php中的Yii::app()->basePath.
ログイン後にコピー


関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート