PHP эквивалент Java. CharacterNgetNumericValue (char c)? - PullRequest
5 голосов
/ 14 октября 2010

Есть ли PHP-эквивалент Java Character.getNumericValue(char c)?

Ответы [ 3 ]

2 голосов
/ 14 октября 2010

Используйте функцию intval().

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

if (intval("2") === 2)
  echo("YAY!");
0 голосов
/ 15 октября 2010

Нет.Там нет выпечки в эквивалентах.

0 голосов
/ 14 октября 2010

ord

Редактировать: Упс, это не то, что делает getNumericValue.Я думаю, что ответ - нет.Вам придется составить собственную таблицу, которая отображает числовые символы в числа.

Если вы хотите, чтобы функция работала с наиболее распространенными числовыми символами, вы могли бы сделать что-то подобное, но это не получитсядля специальных номеров Unicode:

function getNumericValue($ch) {
  if (ctype_digit($ch))
    return ord($ch) - ord('0');
  if (ctype_upper($ch))
    return ord($ch) - ord('A') + 10;
  if (ctype_lower($ch))
    return ord($ch) - ord('a') + 10;
  return -1;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...