php字符串连接中间有字,PHP – 在字符串中间添加字符(从结尾开始)

如何在字符串中间添加字符?

我正在尝试将美国数字(例如2121231234)格式化为一个像这样的破折号:212-123-1234.

我事先不知道数字串会有多长,

它可能是12121231234,它甚至可能是0012121231234,

在这种情况下,我希望它分别变成1212-123-1234和001212-123-1234.

到目前为止,这是我提出的:

$phone_number = '2121231234';

$phone_number = str_split($phone_number); // [2,1,2,1,2,3,1,2,3,4]

$phone_number = array_reverse($phone_number); // [4,3,2,1,3,2,1,2,1,2]

array_splice($phone_number, 4, 0, '-'); // [4,3,2,1,-,3,2,1,2,1,2]

array_splice($phone_number, 8, 0, '-'); // [4,3,2,1,-,3,2,1,-,2,1,2]

$phone_number = array_reverse($phone_number); // [2,1,2,-,1,2,3,-,1,2,3,4]

$phone_number = implode($phone_number); // "212-123-1234"

哪个有效,但似乎要完成这么简单的任务太多了.

我错过了什么?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值