• ベストアンサー

php5のrename()は日本語をリネームすることは出来ないのでしょ

php5のrename()は日本語をリネームすることは出来ないのでしょうか? rename('あ.php','hoge.php'); ↑を実行すると、 No such file or directory とエラーがでます。 phpで日本語のファイル名をリネームすることはできますか?

  • PHP
  • 回答数2
  • ありがとう数4

質問者が選んだベストアンサー

  • ベストアンサー
  • bx2
  • ベストアンサー率47% (97/206)
回答No.2

文字コードを合わせればよいはずです。

reggaepunc
質問者

お礼

文字コードが原因でした!ありがとうございます!

その他の回答 (1)

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

できました。

reggaepunc
質問者

お礼

コードありがとうございます!とても勉強になります。

関連するQ&A

  • rename関数 できない

    どうもこんばんは ファイル名を変更したくて、多数のサイトを調べてました。 どのサイトも全く同じことを書いてて rename("b.txt","a.txt"); a.txt を b.txt に変更する場合の記述。 そのとおりにやったのですが、 「Warning: rename(b.txt,a.txt) [function.rename]: No such file or directory in C:\xampp\htdocs\test\test.php on line 13 」 とエラーが吐いてしまい、いくらやってもこうなってしまいます。 エラー文は該当ファイルかディレクトリが無いとかそういう類だと思いますが、原因がわかりません。 これで数時間費やしてしまいまして、ヒントや答えのレスをいただくころには、 copy関数で代用していると思いますが、どうしてrenameできないのか気になります・・ ヒントでもいいので、レスいただければと思います。 因みにwindowsXPでのテスト環境下(XAMPP)です。 PHP Version 5.2.5

    • ベストアンサー
    • PHP
  • phpのrenameでエラーが出ます

    初めて質問させて頂きます。php初心者で困っていますので教えて下さい。 申し込みフォームで画像を選択  ↓ 確認画面($_FILESに入っている画像を、uniqidで生成したファイル名で一時ファイルフォルダに保存 ↓ 確認ボタンを押すと、申込内容をmysqlに登録、autoincrementしたシリアルナンバーを$_SESSIONに格納 ↓ 完了画面でシリアルナンバー+拡張子でアップロードしたファイルをリネーム&フォルダ移動 というプログラムを作っているのですが、最後のリネーム&移動のところでエラーが出てしまいます。 出力されるエラーは Warning: rename( tmp/5194a2db03b16.jpg, photo/164.jpg): in C:\xampp\htdocs\hogehoge\hoge\complete_01.php on line 18 オンラインサーバーにアップすると同じエラーは出ないのですが、コピーはされません。 参考にrename部分のコードです //写真を指定フォルダに移動 $oldpath = " ichiji/". $_SESSION["onamae"]; $newpath = " photo/" . $_SESSION["id"]; $rename = rename($oldpath , $newpath); $_SESSIONとファイルのパスですが、printで正しくデータが渡されていることを確認しています。 どなたか教えてください。

    • ベストアンサー
    • PHP
  • CFile::Renameで書き込み途中のファイルがリネームされて困っ

    CFile::Renameで書き込み途中のファイルがリネームされて困っています。 ファイル書き込み中のファイルはリネームしない方法はあるのでしょうか? ファイルのリネーム(CFile::Rename)関数を使用してフォルダ内にあるファイル名をリネームする処理を作成しています。 フォルダ内にはA_で始まるファイルが複数存在し、一定周期で別のスレッドからA_で始まるファイルが書き込まれている状態です。 私が作成している処理は、そのフォルダにA_で始まるファイルが存在する場合に、A_をRename関数でB_にリネームしています。 ここで、別スレッドがA_で始まる新しいファイルを書き込みしている最中に私が作成している処理でRename関数が実行されると、基本的にはExceptionが発生するのですが、Exceptionが発生せずに書き込み途中のファイルがRenameされてしまっています。 1.A_XXX001.txtに書き込み中(100行目まで書き込み完了) 2.Rename処理が実行される。 3.B_XXX001.txtが作成される(100行目までのファイル 作成日:2010.02.04 10:00) 4.その後もA_XXX001.txtに書き込みが行われ200行目まで書き込んで終了 (作成日:2010.02.04 10:02) 結果:B_XXX001.txtファイルは不完全なファイルとして作成されてしまっています。 このような現象が起こってしまっています。 どなたかご教授願います。

  • renameコマンドについて

    FTP先のファイル名を以下のように変更したいです。 rename *.txt *.csv これを実行すると 550 *.txt: The filename, directory name, or volume label syntax is incorrect. となってしまいます。 ワイルドカードは使用できると思っていたのですが、 何がいけないのでしょうか? ちなみに rename 111.txt 111.csv と指定した場合は問題なくできます。 複数のファイルを変換したいので困っています。 環境はWindows2000です。宜しくお願いします。

  • URLの日本語ディレクト名のエラーについて

    日本語URLについて教えてください。 URLのディレクトリ名を日本語にしてみたところ、問題なく表示されたのですが、ローカルで同じことをやってみると以下のエラーが出ます。 Warning: Unknown: failed to open stream: No such file or directory in Unknown on line 0 Fatal error: Unknown: Failed opening required 'C:/xampp/htdocs/日本語/index.php' (include_path='.;C:\xampp\php\PEAR;C:\xampp\php\includes') in Unknown on line 0 これって何でなんですかね? 因みにWEBサーバーはApacheで、ローカルはWindows7(64bit)です。 OSの違いが文字コードか何かに関係してるんですかね?

  • 日本語ファイルのリネームと保存

    ファイルアップデートで日本語ファイル名をリネームしてデータベースで対応付けて保存するプログラムを作成しました、そのファイルをリンクしてダウンロードする場合に元の日本語ファイル名で自動的にリネームしてPC側で保存する方法はないでしょうか。 例えば「あああ.txt」を「a.txt」にリネームして <a href="a.txt">あああ.txt</a> という風にしています、これをクリックするとa.txtになってしまいますが、あああ.txtで表示・保存するようにしたいのですが、何かうまい方法はないでしょうか。

    • ベストアンサー
    • PHP
  • PHPをさわっているのですが、日本語ファイル名のPHPファイルは実行で

    PHPをさわっているのですが、日本語ファイル名のPHPファイルは実行できるものなのでしょうか。気になったもので・・・。

    • ベストアンサー
    • PHP
  • mpfrのコンパイル

    mpfr関数を扱えるようにしたいのですが、 mpfrとgmpファイルはインストールしたんですが、 コンパイルしようとすると次のようなエラーがでます。 error: gmp.f: No such file or directory error: mpfr.h: No such file or directory 実行ファイルを作る場所を間違えているのでしょうか? 原因として考えられることを教えていただけませんか? 宜しくお願いします。

  • コンパイル

    ubuntuで、 gcc (ファイル名).c とコンパイルをしようとすると、 error: stdio.h: No such file or directory error: math.h: No such file or directory が出てきてしまいます。どうやってコンパイルしたらよいのでしょう?初心者ですのでよろしくお願いします。

  • crontabでPHPスクリプトが実行出来ない

    crontabで毎分PHPのスクリプトを起動する記述をしましたが、すべて下記エラーが出て実行されません。 phpスクリプトの先頭で「#!bin/usr/php」を書く方法と、crontabで「* * * * * /usr/bin/php test.php > dev/null」とする方法を試してみましたが両方ともダメでした。 解決索があればご教示下さい。 【エラー内容】 test.php: line 1: ?php: No such file or directory

    • ベストアンサー
    • PHP