国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

PHP基礎之命名空間6——使用別名和導入

瀏覽:32日期:2022-09-15 08:56:07

允許通過別名引用或導入外部的完全限定名稱,是命名空間的一個重要特征。這有點類似于在類 unix 文件系統中可以創建對其它的文件或目錄的符號連接。

PHP 命名空間支持有兩種使用別名或導入方式:為類名稱使用別名,或為命名空間名稱使用別名。注意PHP不支持導入函數或常量。

在PHP中,別名是通過操作符?use?來實現的。下面是一個使用所有可能的三種導入方式的例子:

Example #1 使用use操作符導入/使用別名

<?php namespace foo; use MyFullClassname as Another; // 下面的例子與 use MyFullNSname as NSname 相同 use MyFullNSname; // 導入一個全局類 use ArrayObject; $obj = new namespaceAnother; // 實例化 fooAnother 對象 $obj = new Another; // 實例化 MyFullClassname 對象 NSnamesubnsfunc(); // 調用函數 MyFullNSnamesubnsfunc $a = new ArrayObject(array(1)); // 實例化 ArrayObject 對象 // 如果不使用 'use ArrayObject' ,則實例化一個 fooArrayObject 對象?>

注意對命名空間中的名稱(包含命名空間分隔符的完全限定名稱如?FooBar以及相對的不包含命名空間分隔符的全局名稱如?FooBar)來說,前導的反斜杠是不必要的也不允許有反斜杠,因為導入的名稱必須是完全限定的,不會根據當前的命名空間作相對解析。

為了簡化操作,PHP還支持在一行中使用多個use語句

Example #2 通過use操作符導入/使用別名,一行中包含多個use語句

<?php use MyFullClassname as Another, MyFullNSname; $obj = new Another; // 實例化 MyFullClassname 對象 NSnamesubnsfunc(); // 調用函數 MyFullNSnamesubnsfunc?>

導入操作是在編譯執行的,但動態的類名稱、函數名稱或常量名稱則不是。

Example #3 導入和動態名稱

<?php use MyFullClassname as Another, MyFullNSname; $obj = new Another; // 實例化一個 MyFullClassname 對象 $a = ’Another’; $obj = new $a; // 實際化一個 Another 對象?>

另外,導入操作只影響非限定名稱和限定名稱。完全限定名稱由于是確定的,故不受導入的影響。

Example #4 導入和完全限定名稱

<?php use MyFullClassname as Another, MyFullNSname; $obj = new Another; // 實例化MyFullClassname類的對象 $obj = new Another; // 實例化Another類的對象 $obj = new Anotherthing; // 實例化MyFullClassnamething類的對象 $obj = new Anotherthing; // 實例化Anotherthing類的對象 ?>

標簽: PHP
相關文章:
主站蜘蛛池模板: 南昌市| 兴义市| 松阳县| 广昌县| 阳东县| 云南省| 西林县| 邵东县| 勐海县| 三江| 辽宁省| 安岳县| 日照市| 大足县| 故城县| 新竹市| 化德县| 华安县| 贺兰县| 普安县| 张家口市| 金塔县| 宜昌市| 钟山县| 安国市| 宣汉县| 苍南县| 商河县| 大邑县| 南丹县| 长白| 安图县| 离岛区| 靖州| 修文县| 建湖县| 诸城市| 长乐市| 左贡县| 寿阳县| 竹山县|