繁体   English   中英

电话号码输出

[英]Phone number output

我想将原始电话号码记录(31999999)打印为31-999-999(PHP)。 我从来没有做过。 谁能帮我吗?

谢谢

我们可以利用PHP的弱类型系统,因此数字是否存储为字符串都没有关系:

$num = 112223333;
echo substr($num,0,2) . "-" . substr($num, 2, 3) . "-" . substr($num, 4, 4); // 11-222-2333

编辑:根据以下Oli的评论,尽管此代码无论$ num是字符串还是int都有效,但为清楚起见并避免错误,您应该将$ num存储为字符串。

<?php
$phone = 31999999;

$formatted_phone = preg_replace("|\b(\d{2})(\d{3})(\d{3})\b|", "$1-$2-$3", $phone);

echo $formatted_phone;

这就是我想出的,也许有更简单的方法,但这似乎最短。 但是,它将仅接受确切的8位数字,仅此而已。 如果要使用其他模式,则需要准确指定输入。

您需要操作子字符串才能执行此操作。 幸运的是,PHP具有substr()函数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM