Laravel5和laravel6截取字符串方法

浏览893

laravel5 和 laravel6 截取字符串方法,有所不同。

1、老版本 laravel5 可以用str_limit($value, $limit = 100, $end = '...')来截取超出的字符串

该函数的源码,在 vendor\laravel\framework\src\Illuminate\Support\helpers.php

if (! function_exists('str_limit')) {
    /**
     * Limit the number of characters in a string.
     *
     * @param  string  $value
     * @param  int     $limit
     * @param  string  $end
     * @return string
     *
     * @deprecated Str::limit() should be used directly instead. Will be removed in Laravel 6.0.
     */
    function str_limit($value, $limit = 100, $end = '...')
    {
        return Str::limit($value, $limit, $end);
    }
}

2、新版本:该函数已被废弃,将在 laravel 6.0 中正式移除,用Str::limit() 替代,使用 Str::limit($value, $limit = 60, $end = '...')

该函数的源码,在 vendor\laravel\framework\src\Illuminate\Support\helpers.php

  /**
     * Limit the number of characters in a string.
     *
     * @param  string  $value
     * @param  int     $limit
     * @param  string  $end
     * @return string
     */
    public static function limit($value, $limit = 100, $end = '...')
    {
        if (mb_strwidth($value, 'UTF-8') <= $limit) {
            return $value;
        }

        return rtrim(mb_strimwidth($value, 0, $limit, '', 'UTF-8')).$end;
    }



  • 暂无任何回答