php - MySQL 中的 VarChar ZeroFill

标签 php mysql

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

例如:

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

我试图仅在 MYSQL 数据库中实现结果,而不使用 PHP。是否可以?如果不可能,在 PHP 中执行此操作的代码是什么?

最佳答案

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

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

用 PHP 也很容易做到:

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

关于php - MySQL 中的 VarChar ZeroFill,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14551008/

相关文章:

mysql - 自托管计算机上的 500 内部服务器错误

mysql - 使用 Codeigniter 执行多条 sql 语句

php - system/core/CodeIgniter.php 第 58 行 - codeigniter

PHP 复制功能不起作用

MySQL GROUP_CONCAT() 在查询中的 LIKE 约束后产生部分答案

java - 如何将ArrayList数据存储到mysql的单个字段中?

php - 错误 403 - 没有 storage.objects.create 访问权限

php - Symfony 事件订阅者对调度没有反应

php - PHP echo 语句中的无限递归

mysql - 使用左连接和分组依据重命名查询的重复结果