當前位置: 首頁>>代碼示例>>PHP>>正文


PHP text::removeAccents方法代碼示例

本文整理匯總了PHP中text::removeAccents方法的典型用法代碼示例。如果您正苦於以下問題:PHP text::removeAccents方法的具體用法?PHP text::removeAccents怎麽用?PHP text::removeAccents使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在text的用法示例。


在下文中一共展示了text::removeAccents方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: summary

 /**
  * Extract a summary of a text, optionaly with a keyword highlighted
  *
  * @param string $txt	Text
  * @param int $l		Max length of the summary
  * @param string|array $limiter		Prefix and Suffix. e.g: "..." or ["", "..."]
  * @param string $keyword	Highlighted keyword
  * @return string	Summary
  */
 public static function summary($txt, $l, $limiter = '', $keyword = null)
 {
     $start = 0;
     $txt = trim(preg_replace('#\\s+#', ' ', $txt));
     $keyword = trim(preg_replace('#\\s+#', ' ', $keyword));
     if (is_array($limiter)) {
         $limiterLeft = $limiter[0];
         $limiterRight = $limiter[1];
     } else {
         $limiterLeft = $limiter;
         $limiterRight = $limiter;
     }
     if (strlen($txt) <= $l) {
         return $txt;
     }
     if (isset($keyword)) {
         $txt_ = strtolower(text::removeAccents($txt));
         $keyword = strtolower(text::removeAccents($keyword));
         $p = strpos($txt_, $keyword);
         if ($p === false && strpos($keyword, ' ') !== false) {
             $keyword = preg_split('# +#', $keyword);
             foreach ($keyword as $keyword_) {
                 $p = strpos($txt_, $keyword_);
                 if ($p !== false) {
                     $keyword = $keyword_;
                     break;
                 }
             }
         }
         if ($p !== false) {
             $start = round($p + strlen($keyword) / 2 - $l / 3);
             if ($start < 0) {
                 $start = 0;
             }
             if ($start > strlen($txt) - $l) {
                 $start = strlen($txt) - $l;
             }
             if ($start != 0) {
                 if (($pos = strpos($txt, ' ', $start)) !== false) {
                     $start = strpos($txt, ' ', $start) + 1;
                 }
             }
         }
     }
     if ($start + $l >= strlen($txt)) {
         $txt = substr($txt, $start);
         $limiterRight = '';
     } else {
         $txt = substr($txt, $start, $l);
         if (($pos = strrpos($txt, ' ')) !== false) {
             $txt = substr($txt, 0, $pos);
         }
     }
     if ($start == 0) {
         $limiterLeft = '';
     }
     return $limiterLeft . trim($txt) . $limiterRight;
 }
開發者ID:hugonicolas,項目名稱:Site,代碼行數:67,代碼來源:class.Text.php


注:本文中的text::removeAccents方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。