我需要一种能够自动添加' 0'如果用户输入的数字是PHP中1-9之间的数字,则在任何数字前面。我需要这个,因为我想创建一个10个字符的日期,以便我可以在日期之间搜索添加到我的网站的练习。
最简单的方法我想是从一年开始,然后是月,然后是一天,所以我得到这样的东西:2001/04/15。我可以让用户手动添加' 0'但我希望有一种方法可以自动添加。
到目前为止,我有这个,但它并没有做得很好。有人可以帮助我吗?
提前致谢。
//Checks to see if start day is a number 1-9
//If so, adds a '0' at the beginning of the start day variable
if($_POST['eday'] == 1 || $_POST['eday'] == 2 || $_POST['eday'] == 3 || $_POST['eday'] == 4 ||
$_POST['eday'] == 5 || $_POST['eday'] == 6 || $_POST['eday'] == 7 || $_POST['eday'] == 8 ||
$_POST['eday'] == 9) {
$_POST['eday'] = 0 . $_POST['eday'];
echo $_POST['eday'] . '<br>';
}
答案 0 :(得分:2)
使用printf
格式:
printf("%02d<br>", $_POST['eday']);
答案 1 :(得分:0)
你没有什么事情让你自己变得复杂,你可以这样做:
if($_POST['eday'] < 10) $number = '0'.$_POST['eday'];
else $number = $_POST['eday'];
答案 2 :(得分:0)
这是另一回事:http://www.w3schools.com/php/func_string_str_pad.asp
pad_str($str,20,".");
将填充到&#34;。&#34;
的20个字符有可选的第4个参数。
<强> STR_PAD_BOTH 强>
STR_PAD_RIGHT (默认情况下,如果未提供)
<强> STR_PAD_LEFT 强>
所以对你:
$str = $_POST['eday'];
pad_str($str,2,"0", STR_PAD_LEFT);
现在已设置$str
,您可以随时随地使用它。