ホームページ  >  記事  >  php教程  >  PHPautoload PSR-0 標準

PHPautoload PSR-0 標準

WBOY
WBOYオリジナル
2016-06-21 08:49:271036ブラウズ

1

2

3

4

5

6

7

8

9

10

11

12

13

14

function autoload($className)

{

$className = ltrim($className, '');

$fileName = '';

$namespace = '';

if ($lastNsPos = strripos($className, '')) {

$namespace = substr($className, 0, $lastNsPos);

$className = substr($className, $lastNsPos + 1);

$fileName = str_replace('', DIRECTORY_SEPARATOR, $namespace) . DIRECTORY_SEPARATOR;

}

$fileName .= str_replace('_', DIRECTORY_SEPARATOR, $className) . '.php';

require $fileName;

}

必須の同意

修飾された名前空間クラスは、()*

の構造に従う必要があります。

完全修飾された名前空間とクラスは、()*

の構造を持つ必要があります。

各名前空間にはトップレベルの名前空間 (「ベンダー名」) が必要です。

各名前空間にはトップレベルの名前空間 (「ベンダー名」) が必要です。

各名前空間は任意の数のサブ名前空間を持つことができます

各名前空間は、必要なだけサブ名前空間を持つことができます。

ファイル システムからロードする場合、各名前空間区切り文字はパス区切り文字

に変換されます。

各名前空間区切り文字は、ファイル システムからロードするときに DIRECTORY_SEPARATOR に変換されます。

クラス名の各アンダースコア文字 (_) はパス区切り文字に変換され、名前空間のアンダースコア文字 (_) には特定の意味はありません

CLASS NAME 内の各 _ 文字は DIRECTORY_SEPARATOR に変換されます。 _ 文字は名前空間では特別な意味を持ちません。

修飾された名前空間 - クラスに対応してロードされるファイルは .php

で終わる必要があります

ファイル システムからロードする場合、完全修飾された名前空間とクラスには .php という接尾辞が付けられます。

ベンダー名、名前空間、クラス名の文字は、大文字と小文字を任意に組み合わせて使用​​できます

ベンダー名、名前空間、クラス名のアルファベットは、小文字と大文字を任意に組み合わせて使用​​できます。



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。