Кто-нибудь знает функцию PHP для проверки IMEI?Функция проверки IMEI
ответ
проверки IMEI использует алгоритм проверки Луна. Я нашел ссылку на страницу, где вы можете проверить свой IMEI. Кроме того, внизу этой страницы находится фрагмент кода, написанный на JavaScript, чтобы показать, как вычислить 15-ю цифру IMEI и действительный IMEI. Я мог бы дать вам некоторые идеи. Вы можете проверить его здесь http://imei.sms.eu.sk/index.html
Может может помочь вам:
This IMEI number is something like this: ABCDEF-GH-IJKLMNO-X (without “-” characters)
For example: 350077523237513
In our example ABCDEF-GH-IJKLMNO-X:
AB is Reporting Body Identifier such as 35 = “British Approvals Board of Telecommunications (BABT)”
ABCDEF is Type Approval Code
GH is Final Assembly Code
IJKLMNO is Serial Number
X is Check Digit
Кроме того, это может помочь вам: http://en.wikipedia.org/wiki/IMEI#Check_digit_computation
Если я не понял, номер IMEI с помощью алгоритма Luhn. Таким образом, вы можете Google это :) Или вы можете искать IMEI алгоритм
Может быть, ваш хорошо с Imei валидатора в комментариях здесь: http://www.php.net/manual/en/function.ctype-digit.php#77718
Но я не проверял
Вот решение JQuery, которые могут быть использованы: https://github.com/madeinstefano/imei-validator
Короткое решение
Вы можете использовать this (witchcraft!) solution, а просто проверить длину строки:
function is_luhn($n) {
$str = '';
foreach (str_split(strrev((string) $n)) as $i => $d) {
$str .= $i %2 !== 0 ? $d * 2 : $d;
}
return array_sum(str_split($str)) % 10 === 0;
}
function is_imei($n){
return is_luhn($n) && strlen($n) == 15;
}
Подробное решение
Вот моя оригинальная функция, которая объясняет каждый шаг:
function is_imei($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;
}
хорошее развлечение от kasperhartwich
function validateImei($imei, $use_checksum = true) {
if (is_string($imei)) {
if (ereg('^[0-9]{15}$', $imei)) {
if (!$use_checksum) return true;
for ($i = 0, $sum = 0; $i < 14; $i++) {
$tmp = $imei[$i] * (($i%2) + 1);
$sum += ($tmp%10) + intval($tmp/10);
}
return (((10 - ($sum%10)) %10) == $imei[14]);
}
}
return false;
}
- 1. Устройство проверки Android IMEI действительно
- 2. Ошибка с адресом проверки IMEI и струнных
- 3. Как создать IMEI?
- 4. Альтернатива IMEI
- 5. Генерировать IMEI в python
- 6. Проверить действительные IMEI
- 7. Visual Basic IPhone IMEI CHECK?
- 8. IMEI номер выпуска: номер IMEI меняется с помощью кода
- 9. Получение IMEI телефона
- 10. IMEI с помощью Javascript
- 11. Чтобы зашифровать номер IMEI
- 12. IMEI код -66 информация?
- 13. Код IMEI/01 описание
- 14. Получение устройства IMEI
- 15. Функция проверки палиндрома
- 16. Функция Jquery для проверки
- 17. Функция проверки запрета
- 18. Встроенная функция проверки подлинности
- 19. Функция проверки диапазона JQuery
- 20. Простая функция проверки Javascript
- 21. C Функция проверки ошибок
- 22. Пользовательская функция проверки
- 23. Функция проверки переменных PHP?
- 24. Функция проверки палиндрома
- 25. Функция проверки ограничений SQL
- 26. Функция проверки игры
- 27. Функция проверки в Haskell
- 28. Функция проверки правильности плагинов?
- 29. функция проверки текстовому полю
- 30. функция проверки не работает
Есть номера IMEI с 14 15 и 16 цифр также есть номера IMEI, содержащие не только цифры –
номера @VladimirGatev IMEI являются 14 цифр + 1 контрольная сумма. Номера IMEISV - 14 цифр + 2 номера версии программного обеспечения. Кроме того, некоторые производители добавляют к концу IMEI такие вещи, как '01', но это можно игнорировать во всех случаях, которые я видел. – rybo111
Каспер - пожалуйста, вы можете отправить код, на который это ссылается? – rybo111