Intereting Posts
Codeigniter – лучшая практика для дезинфекции материалов Получить user_checkins из facebook Как обработчик Codeigniter выходит из вывода? Обнаружение определенных слов в представлении textarea Регулярное выражение для комментариев и многострочных комментариев и пустых строк Не получайте сообщение об ошибке, если имя входа неверно, просто пустой div, но я могу определить неправильный пароль, если имя пользователя правильно Плохой запрос с использованием file_get_contents для запроса PUT в PHP Расчет PHP из html-формы Поиск многомерных массивов PHP (поиск по определенному значению) Остановить отправку с пустым значением ввода с помощью PHP Аутентификация пула пользователей FOS Подмена php change для входа в систему после входа пользователя в Чтобы понять PHP-команду include -command json_encode не сохраняет порядок Почему функция call_user_func () PHP не поддерживает передачу по ссылке?

Как я могу отделить число и получить первые две цифры в PHP?

Как я могу отделить число и получить первые две цифры в PHP?

Например: 1345 -> Мне нужен этот вывод => 13 или 1542 Я хочу 15 .

одной из возможностей было бы использовать substr :

 echo substr($mynumber, 0, 2); 

РЕДАКТИРОВАТЬ:
пожалуйста, не то, что, как сказал Хакре , это сломается для отрицательных чисел или небольших чисел с десятичными знаками. его решение лучше, поскольку он делает некоторые проверки, чтобы избежать этого.

Прежде всего, вам нужно нормализовать свой номер, потому что не все числа в PHP состоят только из цифр. Возможно, вы ищете целое число:

 $number = (int) $number; 

Проблемы, с которыми вы можете столкнуться здесь, – это диапазон целых чисел в PHP или проблемах округления, см. Integer Docs , INF .

Поскольку число теперь является целым числом, вы можете использовать его в контексте строки и извлекать первые два символа, которые будут первыми двумя цифрами, если число не является отрицательным. Если число отрицательное, знак должен быть сохранен:

 $twoDigits = substr($number, 0, $number < 0 ? 3 : 2); 

См. Демонстрацию .

Не должно быть слишком сложно? Простая подстрока должна делать трюк (вы можете обрабатывать числа как строки на свободно типизированном языке, таком как PHP).

См. Справочную страницу PHP для функции substr() .

Что-то вроде этого:

 $output = substr($input, 0, 2); //get first two characters (digits) 

Вы можете получить строковое значение своего номера, а затем получить нужную часть с помощью substr .

Если вы не хотите использовать substr, вы можете разделить свой номер на 10, пока он не будет иметь 2 цифры:

 <?php function foo($i) { $i = abs((int)$i); while ($i > 99) $i = $i / 10; return $i; } 

дадут вам первые две цифры