-1

こんにちは、ファイル名のインスタンスが losangeles.php 2252 回あり、それを losangeles-0001.php、losangeles-0002.php、losangeles-0003.php など、losangeles-2252 まで変更したいと考えています。 php、これはどのように行われますか?

ありがとう!

4

1 に答える 1

0

次のコードのようにpreg_replace_callback 関数を使用します。

$str = <<< EOF
losangeles.php
losangeles.php
losangeles.php
EOF;
$str = preg_replace_callback('#\b(losangeles)(?=\.)#i',
          create_function('$m',
                          'static $i=1; return $m[1] . sprintf("-%04d", $i++);'),
          $str);
echo $str . "\n";

出力:

losangeles-0001.php
losangeles-0002.php
losangeles-0003.php

ライブデモ: http://codepad.org/aMB9CMTZ

于 2013-03-21T07:34:49.403 に答える