天天看點

php 字元串截取函數 substr();

代碼如下

php
  //構造字元串
  $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  echo "原字元串:".$str."
";
  //按各種方式進行截取
  $str1 = substr($str,5);
  echo "從第5個字元開始取至最後:".$str1."
";
  $str2 = substr($str,9,4);
  echo "從第9個字元開始取4個字元:".$str2."
";
  $str3 = substr($str,-5);
  echo "取倒數5個字元:".$str3."
";
  $str4 = substr($str,-8,4);
  echo "從倒數第8個字元開始向後取4個字元:".$str4."
";
  $str5 = substr($str,-8,-2);
  echo "從倒數第8個字元開始取到倒數第2個字元為止:".$str5."
";
 ?>      

支援中英文混合截取。

/*
------------------------------------------------------
參數:
$str_cut    需要截斷的字元串
$length     允許字元串顯示的最大長度

程式功能:截取全角和半角(漢字和英文)混合的字元串以避免亂碼
------------------------------------------------------
*/
function substr_cut($str_cut,$length)
{
    if (strlen($str_cut) > $length)
    {
        for($i=0; $i < $length; $i++)
        if (ord($str_cut[$i]) > 128)    $i++;
        $str_cut = substr($str_cut,0,$i)."..";
    }
    return $str_cut;
}
?>      
php
  //構造字元串
  $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  echo "原字元串:".$str."
";
  //按各種方式進行截取
  $str1 = substr($str,5);
  echo "從第5個字元開始取至最後:".$str1."
";
  $str2 = substr($str,9,4);
  echo "從第9個字元開始取4個字元:".$str2."
";
  $str3 = substr($str,-5);
  echo "取倒數5個字元:".$str3."
";
  $str4 = substr($str,-8,4);
  echo "從倒數第8個字元開始向後取4個字元:".$str4."
";
  $str5 = substr($str,-8,-2);
  echo "從倒數第8個字元開始取到倒數第2個字元為止:".$str5."
";
 ?>      
/*
------------------------------------------------------
參數:
$str_cut    需要截斷的字元串
$length     允許字元串顯示的最大長度

程式功能:截取全角和半角(漢字和英文)混合的字元串以避免亂碼
------------------------------------------------------
*/
function substr_cut($str_cut,$length)
{
    if (strlen($str_cut) > $length)
    {
        for($i=0; $i < $length; $i++)
        if (ord($str_cut[$i]) > 128)    $i++;
        $str_cut = substr($str_cut,0,$i)."..";
    }
    return $str_cut;
}
?>