最近在讀《php核心技術(shù)與最佳實踐》這本書,書中第一章提到用__call()方法可以實現(xiàn)一個簡單的字符串鏈?zhǔn)讲僮?,比如,下面這個過濾字符串然后再求長度的操作,一般要這么寫:

strlen(trim($str));

那么能否實現(xiàn)下面這種寫法呢?

$str->trim()->strlen();

下面就來試下。

鏈?zhǔn)讲僮?,說白了其實就是鏈?zhǔn)降恼{(diào)用對象的方法。既然要實現(xiàn)字符串的鏈?zhǔn)讲僮鳎敲淳鸵獙崿F(xiàn)一個字符串類,然后對這個類的對象進(jìn)行調(diào)用操作。我對字符串類的期望如下:(1)當(dāng)我創(chuàng)建對象時,我可以將字符串賦值給對象的屬性,并且可以訪問這個屬性讀取值;(2)我可以調(diào)用trim() 和strlen()方法;(3)我還可以這么調(diào)用方法$str->trim()->strlen()。

上面的第(1)條,是一個字符串類的基本要求。先把這個實現(xiàn)了:

移動開發(fā)培訓(xùn),Android培訓(xùn),安卓培訓(xùn),手機開發(fā)培訓(xùn),手機維修培訓(xùn),手機軟件培訓(xùn)

1 class String2 {3     public $value;4 5     public function __construct($str=null)6     {7       &n
        
		

網(wǎng)友評論