123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- <?php
-
- namespace App\Http\Services;
-
- use DateTime;
-
- class CheckParamService
- {
-
- public function __construct()
- {
- }
-
- public function LenMToN($str, $m, $n)
- {
- if (mb_strlen($str) >= $m && mb_strlen($str) <= $n) {
- return true;
- } else {
- return false;
- }
- }
-
- public function isascii($str)
- {
- if (mb_detect_encoding($str) == "ASCII") {
- return true;
- } else {
- return false;
- }
- }
-
- public function isengnum($str)
- {
- return (preg_match("/^[a-zA-Z0-9]+$/", $str) == 1);
- }
-
- public function isnum($str)
- {
- return (preg_match("/^[0-9]+$/", $str) == 1);
- }
-
- public function isPhone($str)
- {
- return (preg_match("/^09[0-9]{8}$/", $str));
- }
-
- public function isImei($imei)
- {
- // Should be 15 digits
- if (strlen($imei) != 15 || !ctype_digit($imei))
- return false;
- // Get digits
- $digits = str_split($imei);
- // Remove last digit, and store it
- $imei_last = array_pop($digits);
- // Create log
- $log = array();
- // Loop through digits
- foreach ($digits as $key => $n) {
- // If key is odd, then count is even
- if ($key & 1) {
- // Get double digits
- $double = str_split($n * 2);
- // Sum double digits
- $n = array_sum($double);
- }
- // Append log
- $log[] = $n;
- }
- // Sum log & multiply by 9
- $sum = array_sum($log) * 9;
-
- // Compare the last digit with $imei_last
- return substr($sum, -1) == $imei_last;
- }
-
- public function validateDate($date, $format = 'Y-m-d H:i:s')
- {
- $d = DateTime::createFromFormat($format, $date);
-
- return $d && $d->format($format) == $date;
- }
-
- public function RemoveChars($str, $chars)
- {
- $chars = str_split($chars, 1);
- for ($i = 0; $i < count($chars); $i++) $str = str_replace($chars[ $i ], "", $str);
-
- return $str;
- }
-
- }
|