給ThinkSNS擴充套件了乙個中文擷取字串的操作

2021-05-31 23:44:38 字數 746 閱讀 4508

/**

* 中文擷取,單位元組擷取模式

* @param string $str 需要擷取的字串

* @param int $slen 擷取字串長度

* @return string $restr 返回的字串長度

* */

function cn_substr($str,$slen,$startdd=0)

$restr = "";

$c = "";

$str_len = strlen($str);

if($str_len < $startdd+1) return "";

if($str_len < $startdd + $slen || $slen==0) $slen = $str_len - $startdd;

$enddd = $startdd + $slen - 1;

for($i=0;$i<$str_len;$i++)

else

if($i >= $enddd)

} }if( $from == 'utf-8' )

return $restr;

}

由於專案的需要,需要進行中文擷取字串的操作。可是找了一下,並沒有發現ts有這個功能。真是有點費解。

於是自己動手寫了乙個。ts的函式都寫在common.php裡面,

呼叫的時候直接在模板中,使用即可。例如  

這裡的10代表10個字元 5個漢字

給string定義乙個擴充套件方法

建立乙個 static 的類,並且裡面的方法也必須是static的,第乙個引數是被擴充套件的物件,必須標註為this,使用時,必須保證namespace using進來了.例項 using system using system.collections.generic using system.li...

乙個中文輸入的類

乙個中文輸入的類 不想讓ime顯示預設的視窗,只想用它的轉換和選字功能,看過拿鐵遊戲論壇上的乙個兄弟的一些 修正了一些我認為的bug,加入了一組控制函式,使得程式中可以顯示一些button,玩家可以不必用熱鍵就能切換輸入法 全形 半形,中 英文標點。不知道這個能不能解決縮排的問題 pragma me...

用request irq註冊乙個中斷

request irq函式做的工作 1 分配乙個irqaciton結構體 2 把自己的中斷程式賦值給aciton 3 把這個結構體放入irq desc irq 的aciton煉表裡 把aciton放入鍊錶之前,還需要判斷這個中斷的標誌,如果是irqf shared,表示可以多個action共享中斷線...