2

我有一个整数$client_version=1000,我确实需要在这个整数中的每个数字之间添加点,所以它看起来像1.0.0.0并将它作为字符串保存在新变量中。

我怎样才能做到这一点?

4

3 回答 3

3

很简单:

$client_version = 1000; 
$dotted = join(".",str_split($client_version));

请注意,这将始终将其拆分,以便点之间只有一个字符。如果你想要类似的东西1.00.0,你需要改变你的问题,以更多地解释你正在尝试做什么以及你需要什么模式。

于 2013-09-06T20:59:11.727 回答
1
  • PHP 提供函数数组 str_split ( string $string [, int $split_length = 1 ] )将字符串转换为字符数组或字符块。在您的情况下,调用str_split((string)1000, 1)orstr_split((string)1000)将导致:

    Array
    (
        [0] => 1
        [1] => 0
        [2] => 0
        [3] => 0
    )
    

    代码:

    implode('.',str_split((string)1000))
    

    结果: 1.0.0.0


  • 有关基于正则表达式的更通用但鲜为人知的方法,请参阅this gist和this tangentially related topic on SO

    代码:

    preg_match_all('/(.{1})/', (string)1000, $matches);
    echo implode('.', $matches[0]);
    

    结果: 1.0.0.0

于 2013-09-06T21:00:49.687 回答
0

使用str_split获取一个字符数组,然后将它们内

$client_version = 1000;
$client_version_chars = str_split($client_version);
$client_version_with_dots = implode('.', $client_version_chars);
于 2013-09-06T21:00:43.950 回答