在我們上一堂課php安全字串的開發思路與程式碼分享中,我們介紹了php安全字串的開發使用,今天我們先給大家繼續介紹關於php字串動態產生對象,經常的需求是,由其他地方取得到一個類別的名稱,需要產生該類別的對象,那麼之前使用的語法($obj = new $classname();)肯定是不行的!我們今天就給大家介紹如何實現~
首先下載我們本課所需要用到的php根據字串類別名稱動態產生物件的類別庫:http://www.php.cn/xiazai/leiku/606
下載完成以後找到php類別庫文件,解壓縮到本地目錄,然後創建新的文件~
我們在新的php檔案裡面呼叫這個類,以及實例化:
<?php include_once "stringtext.php"; //引入类库文件 $className = 'Test'; $obj = call_user_func(array($className, 'create')); var_dump($obj); ?>
直接使用這樣的語法是肯定行不通的:
$classname='Test'; $obj = new $classname();
可以為目標類別定義一個static的方法產生該物件的實例,然後透過call_user_func或call_user_func_array呼叫該方法。當然,也可以透過工廠類別等方法來實現。
所以運行結果如下圖:
以上是php根據字串類別名稱動態產生物件的範例分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!