Dla CHMOD nie jest potrzebne umask(); ale nie zawsze to zadziała ze względu na CHOWN. Zawsze można to sprawdzić:
Kod
if (file_exists($nazwapliku)) { //sprawdz czy plik juz istnieje
echo "Plik istnieje";
//plik istnieje wiec robisz sobie cos tam dalej
}
Kod
if (is_writable($nazwapliku)) { //sprawdz czy masz prawa zapisu
echo "Plik ma prawa zapisu";
//możesz modyfikować plik wiec robisz sobie cos tam dalej
}
Kod
if (chmod($nazwapliku, 0666)) { //sprawdz czy mozesz zmienic CHMOD
echo "Mozna zmienic CHMOD";
//możesz zmienic CHMOD dla tego pliku
}
Pamiętaj że wysyłanie plików przez skrypt i przez FTP powoduje przypisanie im innych właścicieli tak więc w zależności od konfiguracji servera możesz nie mieć możliwości ich edycji.
Często bywa tak że plik "x.jpg" wysłany skryptem nie daje się "ruszyć" poprzez FTP i trzeba wtedy użyć skryptu żeby z nim zrobić cokolwiek.