`

php 5.3中的类的别名的用法

    博客分类:
  • PHP
PHP 
阅读更多
  在PHP 5.3中,要是想引入一些类的名字很长的话,书写起来比较麻烦,这个时候
可以用PHP 5.3的类的别名的用法,举例说明如下:

class Irrational_Long_Class_Name
{
// empty class
}

class_alias('Irrational_Long_Class_Name', 'ShortAlias');

$shortAliasInstance = new ShortAlias();
var_dump( $shortAliasInstance instanceof Irrational_Long_Class_Name);
# true
var_dump( $shortAliasInstance instanceof ShortAlias);
# true


可以用get_class()获得原先真实的类名,比如:
class Irrational_Long_Class_Name
{

public function getClass()
{
print get_class();
}
}

class_alias('Irrational_Long_Class_Name', 'ShortAlias');

$aInstanceWithAlias = new ShortAlias();

$aInstanceWithAlias->getClass();
#  Irrational_Long_Class_Name
print get_class($aInstanceWithAlias);
# Irrational_Long_Class_Name


还可以在FUNCTION中,直接使用别名类,比如:
  class TestClass
{
public function doSomethingWithShortAliasInstance(ShortAlias $b) { }
}
class_alias('Irrational_Long_Class_Name', 'ShortAlias');
$aInstanceWithAlias = new ShortAlias();
$testClassInstance = new TestClass();
$testClassInstance->doSomethingWithShortAliasInstance($aInstanceWithAlias);
2
1
分享到:
评论
1 楼 yeaha 2011-06-16  
都5.3了,干脆直接用use关键字搞定得了。

<?php
use Foo as Bar;

class Foo {
}

$foo = new Bar;
echo get_class($foo);

相关推荐

    蝉知企业门户系统 v5.3蝉知企业门户系统 changezhiEPS php企业门户系统

    功能完备,文章、会员、论坛,更多功能全力开发中; 注重SEO,语义化, 关键词、内链,助您提高搜索排名; 统计分析,让数据说话,随时掌握网站流量和销售动态。 2)真开源真免费! 国内唯一开源企业门户系统; 以...

    PHP中的use关键字概述

    其实,php的use关键字是自php5.3以上版本引入的。它的作用是给一个外部引用起别名。这是命名空间的一个重要特性,它同基于unix的文件系统的为文件或目录创建连接标志相类似。 PHP命名空间支持三种别名方式(或者说...

    PHP命名空间(namespace)原理与用法详解

    PHP 命名空间(namespace)是在PHP 5.3中加入的,它可以解决以下两类问题: 用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。 为很长的标识符名称(通常是为了缓解第一类问题而定义的)...

    PHP程序开发范例宝典III

    实例229 使用表的别名 355 实例230 合并多个结果集 356 8.11 嵌套查询 358 实例231 简单的嵌套查询 358 实例232 复杂的嵌套查询 359 实例233 嵌套查询在查询统计中的应用 361 8.12 子查询 362 实例234...

    crossphp 开发框架 v1.6.1.zip

    View类权限调整,新增virtual_path功能,新增makeIndex()方法用于生成URL的索引部分; Response增加COOKIE相关方法,调整basicAuth()参数,增加digestAuth()方法; Helper::createFolders()增加返回值(bool); ...

    BattleNetApi:暴雪用 PHP 编写的 Battle.Net API 客户端

    该库将所有响应映射到代表某些游戏元素的实体,因此您可以使用辅助方法和其他实用程序获得明确定义的对象,而不是原始数组,以便与返回的数据进行交互。 要求 仅 PHP 5.3 或更高版本。 命名空间很神奇,你知道的。 ...

    ZendFramework中文文档

    14.1.3. 使用静态 get() 方法 14.2. 标准过滤器类 14.2.1. Alnum 14.2.2. Alpha 14.2.3. BaseName 14.2.4. Digits 14.2.5. Dir 14.2.6. HtmlEntities 14.2.7. Int 14.2.8. RealPath 14.2.9. StringToLower...

    精通sql结构化查询语句

    5.2.5 创建复合索引 5.3 删除索引 5.3.1 删除索引的语句结构 5.3.2 使用SQL语句删除索引 5.4 视图的基础知识 5.4.1 视图概述 5.4.2 视图的优点与缺点 5.5 视图的基本操作 5.5.1 创建视图的基本语句结构 5.5.2 使用...

    MySQL 5.1中文手冊

    2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从...

    mysql官方中文参考手册

    2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从...

    crossphp开发框架

    16、移除Config中的set()方法,CrossArray增加set()方法,并使用单例模式 17、修复跨APP生成链接时路由别名不生效的BUG 18、修复特殊情况下$_GET丢失第一个成员变量的BUG 19、异常页面调整,增加Previous trace,...

    MYSQL中文手册

    2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在...

    MySQL 5.1官方简体中文参考手册

    2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从...

    自酿水龙头:ZeroC自酿水龙头

    安装将此拍子添加到自制软件中: brew tap zeroc-ice/tap用法要安装公式: brew install zeroc-ice/tap/安装酒桶: brew cask install zeroc-ice/tap/公式名称别名描述瓶装执照 ice@3.7 ÿ php-ice@3.7 ñ ñ freeze...

    MySQL5.1参考手册官方简体中文版

    2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从...

    MySQL 5.1参考手册 (中文版)

    2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从...

    MySQL 5.1参考手册中文版

    2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在...

    MySQL 5.1参考手册

    2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从...

    mysql5.1中文手册

    在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 ...

Global site tag (gtag.js) - Google Analytics