源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Zend Framework使用Zend_Loader组件动态加载文件和类用法详解

  • 时间:2022-07-02 14:56 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Zend Framework使用Zend_Loader组件动态加载文件和类用法详解
本文实例讲述了Zend Framework使用Zend_Loader组件动态加载文件和类的方法。分享给大家供大家参考,具体如下: [b]加载文件[/b] Zend_Loader组件可以实现对文件的加载功能,还可以判断文件是否可读。 这两个功能分别由Zend_loader::loadFile()方法与Zend_loader::isReadable()方法来实现。 动态加载是可以将变量所指代的文件进行加载的过程。当需要加载的文件为用户输入或是某个方法的参数时,通过传统的加载方法会很难对文件进行加载。 通过动态加载则可以实现这一过程。 示例: 首先建立被加载的文档temp.php,该文档只实现一个简单的输出功能,代码如下。
<?php
echo "Hello World!";
?>

主程序:
<?php
require_once("Zend/Loader.php");
$filename = 'temp.php';
Zend_Loader::loadFile($filename);

执行结果:
Hello World!

说明文件已经被成功的加载进来了。 [b]判断文件属性[/b] 语法格式: Zend_Loader::isReadable($filename) 如果文件可读,程序将返回True 该方法是由PHP函数is_readable()封装而成的,但二者还是存在不同之处。is_readable()方法 不会自动查找include_path目录下的文件,而Zend::isReadable()方法则可以。 示例:
<?php
require_once("Zend/Loader.php");
$filename = 'temp.php';
if(Zend_Loader::isReadable($filename)){
  echo "文件".$filename."是可读的!";
}else{
  echo "文件".$filename."不可读!";
}
echo "<p/>";
if(is_readable('Zend/Date.php')){
  echo "include_path下文件可读";
}else{
  echo "include_path下文件不可读";
}
echo "<p/>";
if(Zend_Loader::isReadable('Zend/Date.php')){
  echo "include_path下文件可读";
}else{
  echo "include_path下文件不可读";
}

结果:
文件temp.php是可读的!
include_path下文件不可读
include_path下文件可读

这个例子说明,is_readable()方法不可以判断include_path文件是否可读,而Zend_Loader::isReadable()方法可以判断。include_path文件,指的是php.ini中配置引入的文件。 不仅如此,Zend_Loader还可以进行类的加载。这将在下面进行讲解。 [b]动态加载类[/b] Zend_Loader不仅可以动态加载文件,通过其loadClass()方法还可以实现。 语法: Zend_Loader::loadClass($class,$dirs) 其中,class为指定的类名,class为指定的类名,dirs为包含类的文件所在的路径及文件名。类名将会根据下划线对应到相应目录下的 PHP文件,如Zend_Controller_Action会指向Zend/Controller/Action.php。 如果参数$dirs是一个字符串或数组,则该方法会根据顺序查找相应目录,并加装第一个匹配的文件。如果文件不存在,该方法还会到include_path指定的目录下进行查找。 示例:
<?php
require_once("Zend/Loader.php");
Zend_Loader::loadClass('Zend_Date');
$date = new Zend_Date();
echo $date;

结果:
2013-3-18 下午05:30:16

说明,这段代码直接到include_path中加载需要的类。然后实例化,输出即可。 更多关于zend相关内容感兴趣的读者可查看本站专题:《[url=http://www.1sucai.cn/Special/546.htm]Zend FrameWork框架入门教程[/url]》、《[url=http://www.1sucai.cn/Special/155.htm]php优秀开发框架总结[/url]》、《[url=http://www.1sucai.cn/Special/386.htm]Yii框架入门及常用技巧总结[/url]》、《[url=http://www.1sucai.cn/Special/39.htm]ThinkPHP入门教程[/url]》、《[url=http://www.1sucai.cn/Special/43.htm]php面向对象程序设计入门教程[/url]》、《[url=http://www.1sucai.cn/Special/84.htm]php+mysql数据库操作入门教程[/url]》及《[url=http://www.1sucai.cn/Special/231.htm]php常见数据库操作技巧汇总[/url]》 希望本文所述对大家基于Zend Framework框架的PHP程序设计有所帮助。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部