簡單易懂的PHP的命名空間以及配合use的使用
阿新 • • 發佈:2019-03-19
names div app 斜杠 三方 func color new php文件
PHP 命名空間(namespace)是在PHP 5.3版本中加入的。
PHP 命名空間是用來解決以下兩類問題的:
- 用戶編寫的代碼與PHP內部的類/函數/常量或第三方類/函數/常量之間的名字沖突。
- 為很長的標識符名稱創建一個別名的名稱,提高源代碼的可讀性
首先我們先建立三個文件
第一個文件 A.php,裏邊有兩個類,命名空間namesapce是 a\b\c(註意:這裏是反斜杠);
<?php namespace a\b\c; class Apply{ function get_info(){ echo ‘this is A Apply‘; } }class C{ function info(){ echo ‘this is info‘; } } ?>
第二個文件 B.php 命名空間namespace a\b\d;
<?php namespace a\b\d; class Apply{ function get_info(){ echo ‘this is B Apply‘; } } ?>
第三個文件 index.php 裏需要使用到上邊兩個文件的類。
那麽現在問題來了:比方說我們現在想實例化A.php裏的類,該怎麽實現呢?A文件的 Apply 類和B.php的Apply類重名了,直接引入使用是會報錯的!
這個時候命名空間就要出場了
首先要包含這個文件 require_once(‘A.php‘);
use的用法要這樣,命名空間 \ 這個空間下你要實例化類的類名。比方說我們要實例化上面的 A.php文件裏的Apply類,使用 use a\b\c\Apply; 就相當於引入這個類,接下來再 new Apply();調用裏邊的方法,跟平常是一樣的。如果要實例化類C,就 use a\b\c\C;。
記得點贊收藏關註我?(^∀^●)?,讓小哥哥帶你闖蕩互聯網開發的世界♥♥♥♥♥
簡單易懂的PHP的命名空間以及配合use的使用