将数字作为字符串参数传递


Passing a number as a string parameter

我开发了一个ussd应用程序,我希望用户通过一个月和一年作为输入,例如

<>之前January 2014应该= 012014十一月2014应该是= 112014之前

我有以下功能:

function myfunt($monthyear){
    $str = sprintf("%02s", $monyear);
    echo $tr;
}

当我传递012014作为参数时,它被转换为5132

我认为您将参数传递为myfunt(012014),但您需要将其传递为myfunt('012014')。此外,代码中的几个小拼写错误- $monyear应该是$monthyear, echo $tr应该是$str(我想你已经注意到它们了)

这可能是一个解决方案,使用substr函数从$monthyear参数中提取年和月。

function myfunt($monthyear){
    $monthNum = substr($monthyear, 0,2);
    $year = substr($monthyear, 2);
    $monthName = date("F", mktime(0, 0, 0, $monthNum, 10));
    echo $monthName." ".$year; //out
}
myfunt("042014");
结果:

April 2014