用php获取范围字母和数字

弗雷迪

如何获取php中底部字符串的范围?

M0000001:M0000100

我想要结果

M0000001
M0000002
M0000003
..
..
..
M0000100

这就是我所做的

<?php
$string = "M0000001:M0000100";
$explode = explode(":",$string );
$text_one = $explode[0];
$text_two = $explode[1];
$range = range($text_one,$text_two);
print_r($range);
?>

那么有人可以帮我吗?

蒂姆·布朗劳

这是您可以执行此操作的许多方法之一,虽然有点冗长,但希望它可以向您显示一些“步骤”。

它不会检查第一个数字是否大于第二个数字。

它不会检查您的范围字符串以“ M”开头。

它没有所有必需的注释。

这些都是您要考虑和解决的事情...

<?php
$string = "M00000045:M000099";
echo generate_range_from_string($string);

function generate_range_from_string($string) {
// First explode the two strings
    $explode  = explode(":", $string);
    $text_one = $explode[0];
    $text_two = $explode[1];
// Remove the Leading Alpha character
    $range_one      = str_replace('M', '', $text_one);
    $range_two      = str_replace('M', '', $text_two);
    $padding_length = strlen($range_one);
// Build the output string
    $output = '';
    for ( $index = (int) $range_one; $index <= (int) $range_two; $index ++ ) {
        $output .= 'M' . str_pad($index, $padding_length, '0', STR_PAD_LEFT) . '<br>';
    }

    return $output;
}

输出将以您在问题中指定的格式列出一个字符串。因此,这完全基于此。

我可能会再进行一些修改以使其具有更多功能,因为我敢肯定有些人会选择!

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章