<?php/** * php 字串插入 2012/7/9 星期一 */function insertStr($str,$i,$Istr){ if(strlen($str) < $i) return; $resStr = ''; for($j = 0; $j < $i; $j++){ $prev .= $str[$j]; } for($k= $i;$k <= strlen($str); $k++){ $last .= $str[$k]; } return $prev.$Istr.$last;}//echo insertStr('124',2,3);/** * php 刪除一段字串 2012/7/9 星期一 */function removeStr($str,$from,$len){ if($from > strlen($str) || strlen($str) < $from + $len) return 'invalid arguments'; $resStr = ''; for($i = 0; $i < $from; $i++ ){ $prevStr .= $str[$i]; } for($j = $from+$len; $j <= strlen($str); $j++){ $nextStr .= $str[$j]; } return $prevStr.$nextStr;}//echo removeStr('123456',5,1);/** * ++ * +- * -+ * -- * php 截取字串 2012/7/9 星期一 */function sub_str($str,$start,$len = null){ // 判斷可選值是否存在 if(!isset($str) || !isset($start)) return 'invalid arguments!'; if($start >=0 && $len >0 ){ for($i = $start; $i < $start + $len ;$i++){ $res .= $str[$i]; } } if($start >= 0 && $len < 0 && strlen($str) + $len >= $start ){ // +- for($i = $start; $i < strlen($str)+ $len; $i++){ $res .= $str[$i]; } } if($start <= 0 && $len > 0 && strlen($str) + $start >= 0 ){ //-+ for($i = strlen($str) + $start; $i < strlen($str); $i++){ $res .= $str[$i]; } } if($start < 0 && $len < 0 && $start < $len && strlen($str) + $start >= 0 &&strlen($str) + $len >= 0){ // -- for($i = strlen($str) + $start; $i < strlen($str) + $len; $i ++){ $res .= $str[$i]; } } return $res;}echo sub_str('123456789',-10, -2).'<br>';echo substr('123456789',-10, -2);?>