php 类文件加载 Autoloader
生活随笔
收集整理的這篇文章主要介紹了
php 类文件加载 Autoloader
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
? 做習慣了編譯語言,轉到php 使用 php的面向對象開發時候遇見一個挺別扭的問題。在Php中引入對象 后 在調用過程中還需要將對象所在的php文件
require 到當前php文件目前代碼結構
index.php <?phpuse model\BookModel;include_once __DIR__.'/autoloader.php'; Autoloader::register();$book=new BookModel(); $book->id=10; $book->name="wangk"; echo $book->toString();?>
?
autoloader.php <?php/**** 自動載入函數*/ class Autoloader {/*** 向PHP注冊在自動載入函數*/public static function register(){spl_autoload_register(array(new self, 'autoload'));}/*** 根據類名載入所在文件*/public static function autoload($className){// DIRECTORY_SEPARATOR:目錄分隔符,linux上就是’/’ windows上是’\’$filePath = __DIR__ . DIRECTORY_SEPARATOR . $className;$filePath = str_replace('\\', DIRECTORY_SEPARATOR, $filePath) . '.php';if (file_exists($filePath)) {require_once $filePath;return; // if(method_exists($className, "init")) { // call_user_func(array($className, "init"), $params); // }} else {echo "無法加載" . $filePath;}} }
?
bookmodel.php <?php /*** Created by PhpStorm.* User: wangk* Date: 2015/7/16* Time: 10:14*/namespace model;class BookModel {public $name;public $id;public $age;public function toString(){return 'name:'.$this->name.','.$this->id.",".$this->age;}}
?
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的php 类文件加载 Autoloader的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 梦到人是对方在想我吗
- 下一篇: 梦到抓鱼虾蟹代表什么