yii 引用php文件,Yii中引出php文件及插件

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中引用

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");

?>

引入插件方法二:

第一,比如说,我们要使用 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.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/563771.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

形态学图像分割matlab算法,图像分割和形态学处理与MATLAB实现

《图像分割和形态学处理与MATLAB实现》由会员分享,可在线阅读,更多相关《图像分割和形态学处理与MATLAB实现(13页珍藏版)》请在人人文库网上搜索。1、实验 图像分割和形态学处理一、实验目的1、 掌握图像分割的基本方法。2、 掌握形态学处理的基本方法。…

php 显示状态,php-fpm status状态配置显示

系统为ubuntu,在usr/etc/sites-enabled/中编辑nginx配置文件server_name demo.com;location ~^/status$ {#auth_basic "status page";#fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;include fastcgi_params;fastcgi_pass unix:/var/…

matlab 动态目录调用程序集,C#中如何动态添加程序集查找目录

C#中如何动态添加程序集查找目录情况如下:现有三个程序集Main.exe, One.dll, Two.dll。其中One.dll引用了Two.dll, 并且One.dll与Two.dll部署在一起, 而Main.exe单独部署。在One.dll中有using Two;namespace One{public SomeType{public void DoSomethin…

matlab 红黑强度图片,matlab图形锐化程序

满意答案gveial5852013.10.31采纳率:50% 等级:12已帮助:11498人help imreadhelp fspecial imfilt帮助稳定中有较多的示例fspecial 函数功能:产生预定义滤波器格式:Hfspecial(type)Hfspecial(gaussian,n,sigma) 高斯…

php chr 乱码,php chr() ord()中文截取乱码问题解决方法_PHP教程

复制代码 代码如下:/* 另一种方法&#xff0c;使用ord()函数&#xff1a; 适用于 gb2312 编码:*/$str "怎么将新闻的很长的标题只显示前面一些字&#xff0c;后面用.....来代替&#xff1f;";function gb2312_substr($str, $limit) {$restr ;for($i0;$i< $limit-…

matlab int8 函数,未定义与 'uint8' 类型的输入参数相对应的函数 'fitnessty'

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼程序如下&#xff1a;clear allclcticpopsize15;lanti10;maxgen50;cross_rate0.4;mutation_rate0.1;a00.7;zpopsize5;bestf0;nf0;number0;Iimread(C:\Users\Yu\Pictures\feiji.jpg);if numel(I)>2Irgb2gray(I);end[m,n]size(I);…

php_os用法,golang中os包用法

os包中实现了平台无关的接口&#xff0c;设计向Unix风格&#xff0c;但是错误处理是go风格&#xff0c;当os包使用时&#xff0c;如果失败之后返回错误类型而不是错误数量&#xff0e;os包中函数设计方式和Unix类似&#xff0c;下面来看一下&#xff0e;func Chdir(dir string)…

python n个人围成一圈,Python练习代码实例69-有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的...

Python 练习实例69题目&#xff1a;有n个人围成一圈&#xff0c;顺序排号。从第一个人开始报数(从1到3报数)&#xff0c;凡报到3的人退出圈子&#xff0c;问最后留下的是原来第几号的那位。程序分析&#xff1a;无。程序源代码&#xff1a;#!/usr/bin/python# -*- coding: UTF-…

php基础学哪些,榆林学习php需要哪些基础(PHP是什么)

榆林学习php需要哪些基础&#xff0c;想多学一门知识&#xff0c;陕西PHP培训对我们都是大有裨益的&#xff0c;紧接着就去了解下php代码运行方式有哪些&#xff0c;php常用框架有哪些&#xff0c;php为啥遭到它行鄙视&#xff0c;PHP是什么&#xff0c;php的性质有哪些&#x…

.deploy 文件 php,关于php:Heroku deploy自动删除服务器文件?

我是HEROKU APPS的新手。在我的heroku应用程序中&#xff0c;我遇到了问题。 那就是我正在使用php脚本将数据保存在服务器上。范例&#xff1a;$file "example.txt";$data "Something...";file_put_contents($file,$data);?>此PHP脚本成功运行并完美保…

php打印中文前一天时间,【多选题】用PHP打印出前一天的时间格式是2012-4-2 12:28:21( ) A. date(\Y-m-d H:i:s\, strtotime(\-1 day\...

【多选题】用PHP打印出前一天的时间格式是2012-4-2 12:28:21( )A. date(\"Y-m-d H:i:s\", strtotime(\"-1 day\",time())) B. date更多相关问题不计饱和时&#xff0c;电枢反应电势可以写成负的电抗压降形式。()某矩形见面简支梁&#xff0c;混凝土强度等级…

oracle11g memory_target,Oracle11g启动报:ORA-00845: MEMORY_TARGET not supported on this system

SQL> startupORA-00845: MEMORY_TARGET not supported on this systemoraclesles11:/oracle/product/11.2.4/dbs> df -h /dev/shmFilesystem Size Used Avail Use% Mounted ontmpfs 1.5G 72K 1.5G 1% /dev/shm--memory_target 大于 /dev/shmoracles…

oracle 11gr2 asm安装,OEL6.1下oracle 11gr2 ASM安装

oracle 11gr2下asm与以往不同&#xff0c;是使用grid安装包来完成安装与配置&#xff0c;在11.2.0.3的安装包中&#xff0c;使用第三个安装包&#xff0c;解压以后进行以下配置&#xff1a;1. Asm相关用户及组配置/usr/sbin/groupadd -g 502 oper/usr/sbin/groupadd -g 600 asm…

oracle11g中用asmlib配置磁盘组,ASM学习笔记_配置ASMLIB磁盘组

ASM学习笔记_配置ASMLIB磁盘组目录1 ASMLIB Introduction2 虚拟机添加一个共享磁盘(块设备)3 下载,安装ASMLIB4 配置,使用ASMLib 磁盘组#######################################################################1 ASMLIB Introduction######################################…

oracle 12配置安全与更新,Oracle 12c 数据库安全核心技术讨论

Oracle AdvancedSecurity新功能 >Oracle Data RedactionOracle Data Redaction对应用户权限的实时访问控制根据用户的权限以及客户端信息&#xff0c;Redaction实时数据修正应用代码代表在不必要的数据库中完成列访问的控制根据客服中心以及技术支持的职责不同&#xff0c;对…

oracle11gR版本GI中新增,Oracle11g新特性MemberKillEscalation简介

从oracle 11gR1 开始&#xff0c;Member Kill Escalation的出现成功的解决了前面提到的情况。当实例eviction在指定的时间内(默认20秒)不能首先我们介绍一下历史。在Oracle 9i/10g 中&#xff0c;如果一个数据库实例需要驱逐(evict, alert 文件中会出现ora-29740错误)另一个实例…

Oracle存储使用情况,我收藏的oracle中一些分析空间使用情况的存储过程!

tom写了个好工具show_space,这个工具对于oracle来讲其实就是个存储过程&#xff0c;这个存储过程可以用来分析空间使用情况&#xff0c;有了此工具&#xff0c;就不用再通过写sql语句来看每条记录或表占用表空间的大小了&#xff0c;使用起来很方便。具体使用过程如下&#xff…

linux iso的引导文件,Linux_从硬盘启动Desktop ISO所需的引导文件,一、仅从硬盘启动Destdop ISO 并 - phpStudy...

从硬盘启动Desktop ISO所需的引导文件一、仅从硬盘启动Destdop ISO 并安装1、从后面的链接下载相关引导文件并解压&#xff1b;2、在任意盘的根目录中新建一个文件夹&#xff0c;并重命名(如feisty、edgy等&#xff0c;menu.lst中用fd_dir变量把要找的文件夹传给系统)把下载的桌…

linux命令为什么这么快,为什么这么多Linux用户更喜欢命令行而不是GUI?

为什么这么多 Linux 用户更喜欢 CLI 而非 GUI&#xff1f; 上次我在 Reddit 关注该问题时&#xff0c;遇到了一些有帮助的投稿&#xff1a;“处于相同的原因我更喜欢谈论指指点点和七嘴八舌。 可以很好的传达并给出很好的反馈。这不是一团糟&#xff0c;而是富有诗意的精确。 你…

Linux下golang的编译,golang Linux下编译环境搭建

1、下载golang1.4和1.10源码(1.4以后的版本都用1.4go编译安装&#xff0c;所以先安装1.4)2、解压后我的目录结构是&#xff1a;/opt/xxx/golang|-------gopath //开发工作目录|     |------src       //开发源码|     |------p…