首頁  >  文章  >  後端開發  >  PHP命名空間基礎使用

PHP命名空間基礎使用

WBOY
WBOY原創
2016-12-01 00:25:36880瀏覽

file1.php:

namespace FooBarsubnamespace;

const FOO = 1;
function foo() {}
class foo{
static function staticmethod() {}
}
?>

file2.php:

namespace FooBar;
include 'file1.php';

const FOO = 2;
function foo() {}
class foo{
static function staticmethod() {}
}

非限定名稱

foo(); // 解析為 FooBarfoo resolves to function FooBarfoo
foo::staticmethod(); // 解析為類別 FooBarfoo的靜態方法staticmethod。 resolves to class FooBarfoo, method staticmethod
echo FOO; // resolves to constant FooBarFOO

限定名稱

subnamespacefoo(); // 解析為函數 FooBarsubnamespacefoo
subnamespacefoo::staticmethod(); // 解析為類別 FooBarsubnamespacefoo, 以及類別的方法 staticmethod
echo subnamespaceFOO; 解析為常數

完全限定名稱

FooBarfoo(); // 解析為函數 FooBarfoo

FooBarfoo::staticmethod(); // 解析為函數 FooBarfoo, 以及類別的方法 staticmethod
echo FooBarFOO; // 解析為常數 FooBarFOFO

回覆內容:

file1.php:

namespace FooBarsubnamespace;

const FOO = 1;
function foo() {}

class foo{

static function staticmethod() {}
}
?>

file2.php:

namespace FooBar;include 'file1.php';


const FOO = 2;
function foo() {}

class foo{

static function staticmethod() {}
}

非限定名稱

foo(); // 解析為 FooBarfoo resolves to function FooBarfoo

foo::staticmethod(); // 解析為類別 FooBarfoo的靜態方法staticmethod。 resolves to class FooBarfoo, method staticmethod

echo FOO; // resolves to constant FooBarFOO


限定名稱

subnamespacefoo(); // 解析為函數 FooBarsubnamespacefoo

subnamespacefoo::staticmethod(); // 解析為類別 FooBarsubnamespacefoo, 以及類別的方法 staticmethod

echo subnamespaceFOO; 解析為常數

完全限定名稱

FooBarfoo(); // 解析為函數 FooBarfoo

FooBarfoo::staticmethod(); // 解析為函數 FooBarfoo, 以及類別的方法 staticmethod

echo FooBarFOO; // 解析為常數 FooBarFOFO

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn