PHP基礎(chǔ)之命名空間2——在同一個文件中定義多個命名空間
也可以在同一個文件中定義多個命名空間。在同一個文件中定義多個命名空間有兩種語法形式。
Example #1 定義多個命名空間,簡單組合語法
<?php namespace MyProject; const CONNECT_OK = 1; class Connection { /* ... */ } function connect() { /* ... */ } namespace AnotherProject; const CONNECT_OK = 1; class Connection { /* ... */ } function connect() { /* ... */ }?>
不建議使用這種語法在單個文件中定義多個命名空間。建議使用下面的大括號形式的語法。
Example #2 定義多個命名空間,大括號語法
<?php namespace MyProject {const CONNECT_OK = 1;class Connection { /* ... */ }function connect() { /* ... */ } } namespace AnotherProject {const CONNECT_OK = 1;class Connection { /* ... */ }function connect() { /* ... */ } }?>
在實際的編程實踐中,非常不提倡在同一個文件中定義多個命名空間。這種方式的主要用于將多個 PHP 腳本合并在同一個文件中。
將全局的非命名空間中的代碼與命名空間中的代碼組合在一起,只能使用大括號形式的語法。全局代碼必須用一個不帶名稱的 namespace 語句加上大括號括起來,例如:
Example #3 定義多個命名空間和不包含在命名空間中的代碼
<?php namespace MyProject {const CONNECT_OK = 1;class Connection { /* ... */ }function connect() { /* ... */ } } namespace { // global codesession_start();$a = MyProjectconnect();echo MyProjectConnection::start(); }?>
除了開始的declare語句外,命名空間的括號外不得有任何PHP代碼。
Example #4 定義多個命名空間和不包含在命名空間中的代碼
<?php declare(encoding=’UTF-8’); namespace MyProject {const CONNECT_OK = 1;class Connection { /* ... */ }function connect() { /* ... */ } } namespace { // 全局代碼session_start();$a = MyProjectconnect();echo MyProjectConnection::start(); }?>
相關(guān)文章:
1. 利用CSS3新特性創(chuàng)建透明邊框三角2. vue前端RSA加密java后端解密的方法實現(xiàn)3. JSP+Servlet實現(xiàn)文件上傳到服務(wù)器功能4. 基于jsp+mysql實現(xiàn)在線水果銷售商城系統(tǒng)5. 基于javaweb+jsp實現(xiàn)企業(yè)財務(wù)記賬管理系統(tǒng)6. CSS可以做的幾個令你嘆為觀止的實例分享7. ASP動態(tài)網(wǎng)頁制作技術(shù)經(jīng)驗分享8. ASP中實現(xiàn)字符部位類似.NET里String對象的PadLeft和PadRight函數(shù)9. php使用正則驗證密碼字段的復(fù)雜強度原理詳細(xì)講解 原創(chuàng)10. 淺談由position屬性引申的css進(jìn)階討論

網(wǎng)公網(wǎng)安備