From 63f3bfb377be1570ddde0688e7a13867200bb529 Mon Sep 17 00:00:00 2001 From: nguyenanhung Date: Sat, 25 Sep 2021 09:28:21 +0700 Subject: [PATCH] Release v3.x - Version 3.0.6 --- README.md | 2 +- composer.json | 4 +- src/Project.php | 4 +- src/Repository/DataRepository.php | 68 ---------------------- src/Repository/config/convert_vi_to_en.php | 25 -------- src/Utils.php | 64 ++------------------ test/test_utils.php | 2 +- 7 files changed, 10 insertions(+), 159 deletions(-) delete mode 100644 src/Repository/DataRepository.php delete mode 100644 src/Repository/config/convert_vi_to_en.php diff --git a/README.md b/README.md index 5da0f25..b924908 100644 --- a/README.md +++ b/README.md @@ -132,7 +132,7 @@ $str = 'Nguyễn An Hưng'; d($utils->getVersion()); // show "2.0.5" d($utils::slugify($str)); // show "nguyen-an-hung" -d($utils::convert_vi_to_en($str)); // show "nguyen-an-hung" + ``` ## Support diff --git a/composer.json b/composer.json index 71268a5..7b59f22 100644 --- a/composer.json +++ b/composer.json @@ -23,8 +23,8 @@ "ext-mbstring": "*", "nguyenanhung/benchmark": "^2.0 || ^1.0", "nguyenanhung/filesystem-helper": "^2.0 || ^1.0", - "monolog/monolog": "^2.0 || ^1.26", - "cocur/slugify": "^4.0" + "nguyenanhung/slug-helper": "^2.0 || ^1.0", + "monolog/monolog": "^2.0 || ^1.26" }, "require-dev": { "kint-php/kint": ">=3.0" diff --git a/src/Project.php b/src/Project.php index b34f403..a3375b5 100644 --- a/src/Project.php +++ b/src/Project.php @@ -18,7 +18,7 @@ */ interface Project { - const VERSION = '3.0.5'; + const VERSION = '3.0.6'; /** * Hàm lấy thông tin phiên bản Packages @@ -29,5 +29,5 @@ interface Project * @copyright: 713uk13m * @time : 9/27/18 18:32 */ - public function getVersion(); + public function getVersion(): string; } diff --git a/src/Repository/DataRepository.php b/src/Repository/DataRepository.php deleted file mode 100644 index 8a043f4..0000000 --- a/src/Repository/DataRepository.php +++ /dev/null @@ -1,68 +0,0 @@ - - * Date: 9/28/18 - * Time: 14:47 - */ - -namespace nguyenanhung\MyDebug\Repository; - -use nguyenanhung\MyDebug\Project; -use nguyenanhung\MyDebug\Version; - -/** - * Class DataRepository - * - * @category Repository - * @package nguyenanhung\MyDebug\Repository - * @author 713uk13m - * @copyright 713uk13m - */ -class DataRepository implements Project -{ - use Version; - - const CONFIG_PATH = 'config'; - const CONFIG_EXT = '.php'; - - /** - * Hàm lấy nội dung config được quy định trong thư mục config - * - * @author: 713uk13m - * @time : 9/28/18 14:47 - * - * @param string $configName Tên file config - * - * @return array|mixed - */ - public static function getData(string $configName) - { - $path = __DIR__ . DIRECTORY_SEPARATOR . self::CONFIG_PATH . DIRECTORY_SEPARATOR . $configName . self::CONFIG_EXT; - if (is_file($path) && file_exists($path)) { - return require $path; - } - - return array(); - } - - /** - * Hàm lấy nội dung Data từ 1 file bất kỳ trong hệ thống - * - * @author: 713uk13m - * @time : 10/17/18 09:25 - * - * @param string $filename Đường dẫn file config - * - * @return array|mixed - */ - public static function getDataContent(string $filename) - { - if (is_file($filename) && file_exists($filename)) { - return require $filename; - } - - return array(); - } -} diff --git a/src/Repository/config/convert_vi_to_en.php b/src/Repository/config/convert_vi_to_en.php deleted file mode 100644 index a52d892..0000000 --- a/src/Repository/config/convert_vi_to_en.php +++ /dev/null @@ -1,25 +0,0 @@ - - * Date: 10/13/18 - * Time: 01:09 - */ -return [ - 'separator' => '-', - 'vn_array' => [ - "à", "á", "ạ", "ả", "ã", "ầ", "ấ", "ậ", "ẩ", "ẫ", "ă", "â", "ằ", "ắ", "ặ", "ẳ", "ẵ", "ă", "è", "é", "ẹ", "ẻ", "ẽ", "ề", "ế", "ệ", "ể", "ễ", "ê", "ì", "í", "ị", "ỉ", "ĩ", "ò", "ó", "ọ", "ỏ", "õ", "ồ", "ố", "ộ", "ổ", "ỗ", "ô", - "ờ", "ớ", "ợ", "ở", "ỡ", "ơ", "ù", "ú", "ụ", "ủ", "ũ", "ừ", "ứ", "ự", "ử", "ữ", "ư", "ỳ", "ý", "ỵ", "ỷ", "ỹ", "đ", "A", "À", "Á", "Ạ", "Ả", "Ã", "Ầ", "Ấ", "Ậ", "Ẩ", "Ẫ", "Ă", "Â", "Ằ", "Ắ", "Ặ", "Ẳ", "Ẵ", "Ă", "È", "É", "Ẹ", - "Ẻ", "Ẽ", "E", "Ề", "Ế", "Ệ", "Ể", "Ễ", "Ê", "I", "Ì", "Í", "Ị", "Ỉ", "Ĩ", "O", "Ò", "Ó", "Ọ", "Ỏ", "Õ", "Ồ", "Ố", "Ộ", "Ổ", "Ỗ", "Ô", "Ờ", "Ớ", "Ợ", "Ở", "Ỡ", "Ơ", "Ù", "Ú", "Ụ", "Ủ", "Ũ", "U", "Ừ", "Ứ", "Ự", "Ử", "Ữ", "Ư", - "Ỳ", "Ý", "Ỵ", "Ỷ", "Ỹ", "Y", "Đ", "B", "C", "D", "F", "G", "H", "I", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "V", "X", "Y", "Z", "W" - ], - 'en_array' => [ - "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "e", "e", "e", "e", "e", "e", "e", "e", "e", "e", "e", "i", "i", "i", "i", "i", "o", "o", "o", "o", "o", "o", "o", "o", "o", "o", "o", - "o", "o", "o", "o", "o", "o", "u", "u", "u", "u", "u", "u", "u", "u", "u", "u", "u", "y", "y", "y", "y", "y", "d", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "e", "e", "e", - "e", "e", "e", "e", "e", "e", "e", "e", "e", "i", "i", "i", "i", "i", "i", "o", "o", "o", "o", "o", "o", "o", "o", "o", "o", "o", "o", "o", "o", "o", "o", "o", "o", "u", "u", "u", "u", "u", "u", "u", "u", "u", "u", "u", "u", - "y", "y", "y", "y", "y", "y", "d", "b", "c", "d", "f", "g", "h", "i", "j", "k", "l", "m", "n", "p", "q", "r", "s", "t", "v", "x", "y", "z", "w" - ], - 'special_array' => [ - ',', ';', '\'', '"', '(', ')', '.', ':', '…', '[', ']', '|', '\\', '?', "/", "!", "@", "#", "$", "^", "&", "*", "+", "=", "<", ">", "–", '™', '®', '%', '“', '”', '’', '‘'] -]; diff --git a/src/Utils.php b/src/Utils.php index 3457f60..8b5d8c6 100644 --- a/src/Utils.php +++ b/src/Utils.php @@ -8,9 +8,7 @@ namespace nguyenanhung\MyDebug; -use Exception; -use Cocur\Slugify\Slugify; -use nguyenanhung\MyDebug\Repository\DataRepository; +use nguyenanhung\Libraries\Slug\SlugUrl; /** * Class Utils @@ -34,67 +32,13 @@ class Utils implements Project * * @param string $str Chuỗi ký tự đầu vào * - * @return array|mixed|string|string[] Đầu ra rà 1 chuỗi ký tự + * @return string Đầu ra rà 1 chuỗi ký tự * @author: 713uk13m * @time : 10/9/18 00:31 * */ - public static function slugify(string $str = '') + public static function slugify(string $str = ''): string { - if (!class_exists(Slugify::class)) { - if (function_exists('log_message')) { - $message = 'Không tồn tại class Slugify'; - log_message('error', $message); - } - - return self::convert_vi_to_en($str); - } - try { - $slugify = new Slugify(); - - return $slugify->slugify($str); - } catch (Exception $e) { - if (function_exists('log_message')) { - log_message('error', 'Error Message: ' . $e->getMessage()); - log_message('error', 'Error TraceAsString: ' . $e->getTraceAsString()); - } - - return self::convert_vi_to_en($str); - } - } - - /** - * Function convert_vi_to_en - * - * Hàm chuyển đổi ký tự từ tiếng Việt, - * và các ký tự đặc biệt sang ký tự không dấu - * - * Sử dụng trong trường hợp class slugify nó không chạy - * - * @param string $str Chuỗi ký tự đầu vào - * - * @return array|mixed|string|string[] Đầu ra rà 1 chuỗi ký tự - * @author: 713uk13m - * @time : 10/13/18 01:17 - * - */ - public static function convert_vi_to_en(string $str = '') - { - $str = trim($str); - $str = function_exists('mb_strtolower') ? mb_strtolower($str) : strtolower($str); - $data = DataRepository::getData('convert_vi_to_en'); - if (!empty($str)) { - $str = str_replace($data['vn_array'], $data['en_array'], $str); - $str = str_replace($data['special_array'], $data['separator'], $str); - $str = str_replace(' ', $data['separator'], $str); - while (strpos($str, '--') > 0) { - $str = str_replace('--', $data['separator'], $str); - } - while (strpos($str, '--') === 0) { - $str = str_replace('--', $data['separator'], $str); - } - } - - return $str; + return (new SlugUrl())->slugify($str); } } diff --git a/test/test_utils.php b/test/test_utils.php index f3953d4..0d90964 100644 --- a/test/test_utils.php +++ b/test/test_utils.php @@ -16,4 +16,4 @@ d($utils->getVersion()); d($utils::slugify($str)); -d($utils::convert_vi_to_en($str)); +