PHP 中加载类文件的几种方法

PHP 中加载类文件,常用require语句或者include语句。二者的区别是:require语句包含的文件如果有语法错误或者不存在该文件,则会提示错误“fatal error”,并且终止程序运行;include语句在同样的情况下,则是提示警告“warning”,并且程序继续运行。

PHP 加载类文件还可以用require_once或者include_once,他们与require语句或者include语句的区别在于:包含文件时会检查是否已有同样的文件被包含,若是有则不会重复包含。但是,使用require_once或者include_once难以避免会造成效率的下降。

从PHP5开始,可以通过定义一个_autoload()函数来实现类的自动加载。当PHP尝试使用未定义的类时,就会自动调用该函数。

_autoload()用法:

./myClass.php

<?php
class myClass {
    public function __construct() {
        echo "myClass init'ed successfuly!!!";
    }
}
?>

./index.php

<?php
function __autoload($classname) {
    $filename = "./". $classname .".php";
    include_once($filename);
}

$obj = new myClass();
?>

时间: 2024-10-14 09:48:25

PHP 中加载类文件的几种方法的相关文章

Velocity中加载vm文件的三种方式

Velocity中加载vm文件的三种方式: a.  加载classpath目录下的vm文件 Properties p = new Properties(); // 加载classpath目录下的vm文件 // 这里是加载模板VM文件,比如:/META-INF/template/Web_B2CPayment.vm(请参考mas_spring_integration.xml) p.setProperty("file.resource.loader.class", "org.apa

转 Velocity中加载vm文件的三种方式

Velocity中加载vm文件的三种方式 velocitypropertiespath Velocity中加载vm文件的三种方式:   方式一:加载classpath目录下的vm文件 Properties p = new Properties(); p.put("file.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); Ve

VC6.0加载lib文件的三种方法

MFC编写程序,都要用到动态链接库,MFC相关的动态库有MFCD42和MFC42等,MFC框架程序已经自动加载,那么如何引入第三方的动态链接库到工程中呢? 静态链接库是要先把程序中所需要使用的函数编译成机器码,保存在*.lib文件中.编译器会去*.lib中找出所需要的函数,并把这些函数的机器码复制一份,放在可执行文件中.将lib库引入工程,有下面3种方法. 第一种方法,lib文件直接加入到工程文件列表中. 在VC中打开“File View”一页,选中工程名,单击鼠标右键,然后在弹出的快捷菜单中选

xml文件 加载properties文件的两种方法与注意事项

1.遇到的问题: 配置redisSpringContext.xml 时,遇到 properties加载失败,提示BeanDefinitionStoreException  和   java.lang.IllegalArgumentException: Could not resolve placeholder 'xxx'  , 找了很久都找不到原因,文件路径和键名都没写错,加载语法也没有写错...这就很难受了. 直到检查web.xml文件,,我猜测,是不是因为 springcontext-*.x

javaweb中加载外部文件的三种方式

1.request.getSession().getServletContext().getResourceAsStream("/WEB-INF/classes/a.txt""); / 相对对于项目的根路径 2.getClass().getClassLoader().getResourceAsStream("/a.txt") / 不管有没有'/' 都相对于classpath路径(/WEB-INF/classes/) 3.getClass().getReso

worker中加载本地文件报错的解决方案

如果在一个swf的主线程中加载文件时,报安全沙箱的错误, 网上有诸多的解决方案.但是如果在一个worker中加载本地文件报类似如下的错误: *** 安全沙箱冲突 *** SecurityError: Error #2148 不能访问本地资源. 网上给出的方案几乎都不能有效的解决问题, 之所以说几乎, 是因为如果以后读者搜到这篇文章时, 有效的解决方案就在这里. 即在本地架设一个http资源服务器, 加载的时候不要用本地地址作为加载路径,而是使用http 地址作为加载地址即可正确加载.

041:模版中加载静态文件详解

加载静态文件: 在一个网页中,不仅仅只有一个 html 骨架,还需要 css 样式文件, js 执行文件以及一些图片等.因此在 DTL 中加载静态文件是一个必须要解决的问题.在 DTL 中,使用 static 标签来加载静态文件.要使用 static 标签,首先需要 {% load static %} .加载静态文件的步骤如下: 1. 首先确保 django.contrib.staticfiles 已经添加到 sttings.INSTALLED_APPS 中. 2. 确保在 settings.p

Spring加载properties文件的两种方式

在项目中如果有些参数经常需要修改,或者后期可能需要修改,那我们最好把这些参数放到properties文件中,源代码中读取properties里面的配置,这样后期只需要改动properties文件即可,不需要修改源代码,这样更加方便.在Spring中也可以这么做,而且Spring有两种加载properties文件的方式:基于xml方式和基于注解方式.下面分别讨论下这两种方式. 1. 通过xml方式加载properties文件 我们以Spring实例化dataSource为例,我们一般会在beans

动态加载JS脚本的4种方法

要实现动态加载JS脚本有4种方法: 1.直接document.write <script language="javascript"> document.write("<script src='test.js'><\/script>"); </script>   2.动态改变已有script的src属性 <script src='' id="s1"></script> <