如何使chunk_split不会在字符串的末尾添加内容

时间:2014-08-21 18:20:53

标签: php

我使用chunk_split添加" - "每四个字母,但它也在字符串的末尾添加一个,我不想要,这里是代码:

<?php

    function GenerateKey($input)
    {
        $generated = strtoupper(md5($input).uniqid());
        echo chunk_split(substr($generated, -24), 4, "-");
    }

?>

也许不是生成序列密钥的最有效方法,我认为如果我使用mt_rand会更好,但我认为它现在会做。

那么我该如何做呢?它没有添加&#34; - &#34;在字符串的末尾? 因为现在输出看起来像这样:

  

89E0-1E2E-1875-3F63-6DA1-1532 -

非常感谢我能得到的帮助

亲切的问候, 的Jesper

2 个答案:

答案 0 :(得分:1)

你可以通过rtrim删除试验。试试这个

$str = "89E01E2E18753F636DA11532";
echo rtrim(chunk_split($str,4,"-"), "-");

<强>输出:

89E0-1E2E-1875-3F63-6DA1-1532

答案 1 :(得分:0)

您可以使用rtrim():

切断-
echo rtrim(chunk_split(substr($generated, -24), 4, "-"), "-");