php 命名空间实现的原理,php命名空间实现的理解
[前言]
之前測試命名空間,文件頭部明明定義了namespace,并且類文件的存放位置與相對路徑也一致,但use之后仍提示“找不到類”,為什么?
[原理分析]
1.根據use的值確定類文件的物理存儲位置,然后通過require_one將類文件加載;
2.類文件名稱與類名稱需要有一定的對應規則,方便autoload方法找到并加載類文件;
3.類文件的namespace值需要與實際相應路徑一致。
4.常見錯誤:類文件的namespace值與實際路徑不一致,類名稱與類文件名稱沒有對應關系。
[示例目錄結構]
namespaceDemo
--mk.php
--libs
---Demo.class.php
[示例代碼]
mk.php
run();
Demo.class.php
index();
}catch (\Exception $e) {
echo 'exception:' . $e->getMessage() . ' ' . $e->getFile() . ' ' . $e->getLine();
} catch (\Error $e) {
echo 'error:' . $e->getMessage() . ' ' . $e->getFile() . ' ' . $e->getLine();
}
}
private function index(){
echo 'This is '.__CLASS__.' class';
exit;
}
}
直接訪問mk.php,將會調用相關方法。
總結
以上是生活随笔為你收集整理的php 命名空间实现的原理,php命名空间实现的理解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android 动态文本选取,andro
- 下一篇: php基础教学笔记,php学习笔记:基础