是否有任何PHP功能将文本数字转换为数字?例如:convert(“9”)输出9

时间:2010-12-11 22:02:11

标签: php

  

可能重复:
  Converting words to numbers in PHP

我需要一个将文本数字转换为数字的函数。 例如:convert(“nine”)输出9

我知道我可以写一个函数,比如if($ number ==“one”){$ number = 1;等等...... 但这将是很多工作。

2 个答案:

答案 0 :(得分:0)

使用switch语句。

答案 1 :(得分:0)

使用这样的查找表:

$numbers = array(
    'zero' => 0,
    'one' => 1,
    'two' => 2,
    'three' => 3,
    'four' => 4,
    'five' => 5,
    'six' => 6,
    'seven' => 7,
    'eight' => 8,
    'nine' => 9
);

$digit = strtolower($digit);

if (isset($numbers[$digit])) {
    $digit = $numbers[$digit];
}

注意我使用strtolower以防万一。当然,这个解决方案对于几十个以上的任何东西都是不切实际的。除此之外,你需要某种解析器。