2016-07-05 19 views
-3

私は、ディレクトリ内のファイル name.processingを持っていると私はname.processedPHPでディレクトリ内のファイルの拡張子を変更する方法は?

にこのファイルの名前を変更したい私はこのコードを持っている:

$fn1 = str_replace(".processed", ".processing", $fn); 
rename($fn1,$fn); 

$ fnが完全なパスが含まれています。

ファイルのディレクトリ名が変更されていないのはなぜですか?

私は、私は、文字列の一部を置き換える方法を知っているが、私はあなたが後方str_replaceため偶然にを持っているように見えますかディレクトリ内のファイルの拡張子を置き換える

+2

これはhttp://stackoverflow.com/questions/8163746/の重複ではありませんどのように置換するか特定の部分の文字列 – PaulH

+0

@ Rizier123重複を再考してください – PaulH

+0

@Machavityは重複を再考してください – PaulH

答えて

2

PHPは、パラメータの順序で常に予測できない、あなたはマニュアルを参照してください試してみてください。

// processing -> processed 
// str_replace($search, $replace, $haystack) 
$fn_new = str_replace(".processing", ".processed", $fn); 
// rename($oldname, $newname) 
$rename = rename($fn,$fn_new); 
echo "old: $fn, fn_new: $fn_new, rename: ", $rename ? 'success' : 'failure'; 

http://php.net/manual/en/function.str-replace.php http://php.net/manual/en/function.rename.php


編集: それはまだ動作しない場合:https://stackoverflow.com/search?q=php+rename

+0

私はなぜ、うまく動作しないのですか:-( – mydb

+0

成功か失敗かを返しますか? – PaulH

+0

old:、fn_new:C:/wamp/www/prove/WORKSPACE/8bf50820/1467739866.processed、rename:failure – mydb

関連する問題