Yii中引出php文件及插件

WBOY
Freigeben: 2016-06-13 13:11:33
Original
845 Leute haben es durchsucht

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.*',
	),
)
Nach dem Login kopieren

在代码中可以使用下面方式引用
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';
Nach dem Login kopieren


三、在Yii中引用插件
注:插件和扩展不一样
1,源码放在project/ckeditor/*
2,在代码create,update中引用
<?php include_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");
?>
Nach dem Login kopieren


引入插件方法二:
第一,比如说,我们要使用 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.
Nach dem Login kopieren


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage