MySQL中的VarChar ZeroFill

时间:2013-01-27 19:02:37

标签: php mysql

我正在尝试在MYSQL表中添加一行,我希望它包含字母和数字,限制为4个字符(字母或数字)。在同一时间..如果有人想要提交有3个字符或2的内容。我希望其余的数据用零填充

例如:

23e becomes 023e
2 become 0002
1234 stays the same
123e stays the same

我试图在不使用PHP的情况下在MYSQL数据库中实现结果。可能吗?如果不可能在PHP中执行什么代码?

2 个答案:

答案 0 :(得分:3)

使用char而不是varchar(这有一定数量的字符)。在mysql中:

INSERT INTO t1 (col1)
   VALUES (LPAD(?, 4, '0'))

在PHP中也很容易做到:

$value = str_pad($value, 4, '0', STR_PAD_LEFT);

答案 1 :(得分:-1)

尝试使用此PHP脚本:

<?
$YourNumber="23";
for($i=0;$i<4;$i++)
{
    if(strlen($YourNumber)<4)
    {
        $YourNumber="0".$YourNumber;
    }
}
echo($YourNumber);
?>