PHP Namespace Use Alias 名稱空間 匯入 別名

最近看了 O’REILLY 的 Modern PHP,作者是 Josh Lockhart,有興趣的人可以去買一本來看看,受益良多。 同時也是 PHP: The Right Way 的作者, 因為現在網路上過時資訊太多,提供了良好的 PHP 習慣和方法。

Namespace 名稱空間

為了避免有相同的類別、介面、函式、常數名稱,名稱重複而導致執行失敗。

<?php
namespace Clouding\Blog;

class Sample
{
    // do something
}

Use 匯入, Alias 別名

PHP 5.3.0

不使用匯入 use

<?php
require  __DIR__ . '/Sample.php';

$demo = new \Clouding\Blog\Sample();

使用匯入 use

<?php
require  __DIR__ . '/Sample.php';
use Clouding\Blog\Sample;

$demo = new Sample();

使用別名 as

<?php
require  __DIR__ . '/Sample.php';
use Clouding\Blog\Sample as s;

$demo = new s();

其他名稱空間中使用正確的類別名稱,類別名稱前加\

<?php
namespace Clouding\Blog;

class Sample
{
    public function doSomething()
    {
        throw new \Exception();
    }
}

PHP 5.6.0

匯入函式 use function

<?php
require  __DIR__ . '/function.php';
use function Clouding\Blog\functionName;

functionName();

匯入常數 use const

<?php
require  __DIR__ . '/constant.php';
use const Clouding\Blog\CONST_NAME;

echo CONST_NAME;