2016-12-09 10 views
0

次のコードを使用すると、ファイルをコピーしようとするとエラーが発生します。私はしかし、ほぼ同じコードを使用してファイルを削除することができます。ファイルを削除できません。コピーまたは変更できません - PHP

$file = "img1.jpg"; 

if (!copy($file, "img2.jpg")) { 
    echo ("Error copying $file"); 
} else { 
    echo ("Copied $file"); 
} 

削除コード:

if (!unlink($file)) { 
    echo ("Error deleting $file"); 
} else { 
    echo ("Deleted $file"); 
} 

誰でも、それがこれをやっている理由を知っていますか?

編集:Apacheが

is_readableとis_writeableごとにファイルを所有しているが、それらを読み書きすることができないように思わEDIT2は:コピーコードに二番目の引数を追加しました。これは問題ではなく、私はこの質問を投稿する際に間違いをしています。

+0

コピーから..... **へ** –

答えて

0
$file = "img1.jpg"; 
$newFile = "img1_copy.jpg"; 

if (!copy($file, $newFile)) { 
    echo ("Error copying $file"); 
} else { 
    echo ("Copied $file"); 
} 

http://php.net/manual/en/function.copy.php

機能copy()は、2つの引数が必要です。

+0

質問の書き込みでエラーが発生しましたが、エラーは発生していません –

+0

ファイルをコピーしようとしたときにエラーが発生しました。スニペットの代わりに '.php'ファイル全体をコピーしてください。 – TheWorstOne

+0

問題が発生する唯一の方法は、ディレクトリのアクセス許可が正しく設定されていない場合です。フォルダに777の権限があることを確認します。 – TheWorstOne

0

www-dataが所有するようにすべてのアクセス権を手動で変更し、www-data(グループ)は読み書きできます。 Apacheは何か変わったことをしていて、apacheユーザが所有していてファイルを読み書きすることができる間に、www-dataグループはどちらも実行できませんでした。

関連する問題