Php 主键从1到01、从2到02等

Php 主键从1到01、从2到02等,php,mysql,database,Php,Mysql,Database,我在新闻表中有一个主键字段(news_id) 它从1、2、3、4开始,依此类推 但是,我想换成01,02,03,04,e tc。。。可能吗 如果不是,如何在PHP中实现这一点?如果是用于输出,只要在主键小于10时添加一个0: if($result['id'] < 10){ echo '0' . $result['id']; } if($result['id']

我在新闻表中有一个主键字段(news_id)

它从1、2、3、4开始,依此类推

但是,我想换成01,02,03,04,e tc。。。可能吗


如果不是,如何在PHP中实现这一点?

如果是用于输出,只要在主键小于10时添加一个0:

if($result['id'] < 10){
   echo '0' . $result['id'];
}
if($result['id']<10){
回显“0”。$result['id'];
}

在99%的情况下,直接操作按键是个坏主意

最好的方法可能是在输出键时更改格式,如中所示


好的。。。另一种方法是。。。(尽管过于逻辑化和数学化……)


你需要这个做什么?像这样操纵按键是个坏主意。最好的方法是在输出键时更改格式。如果您只想使用“01”格式进行输出,您可以在从中获取结果后将id转换为字符串DB@Pekka例如,它是用于输出的。domain.com/news/031(谷歌新闻在提交时更喜欢这种方法)
$key = 4;
echo sprintf('%02d', $key); // outputs 04
$id = 5;
$noOfZeros = 2; // i.e. you are converting 2 to 002.
$divider = pow(10,$noOfZeros); // Now you are creating a divider (/100 in this case)
$id = $id / $divider; // dividing the id by 100. i.e. 5 gets converted to 0.05
$zeroedId = str_replace(".","",$id); // finally replace the "." with nothing... so 0.05 becomes 005 :).