Vytvoření adresáře, nastavení práv
Adresář vytvoříte jednoduše pomocí funkce mkdir(). První parametr obsahuje název adresáře, druhý nepovinný parametr obsahuje požadovaná práva (v oktalové interpretaci). Na tato práva se může aplikovat maska a výsledná práva tím ovlivnit. Masku změníte příkazem umask().
<?php
umask (0022);
mkdir ("adresar1"); //vysledna prava 0755
mkdir ("adresar2", 0777); //vysledna prava 0755
mkdir ("adresar3", 0755); //vysledna prava 0755
umask (0);
mkdir ("adresar4"); //vysledna prava 0777
mkdir ("adresar5", 0777); //vysledna prava 0777
mkdir ("adresar6", 0755); //vysledna prava 0755
umask (0007);
mkdir ("adresar7"); //vysledna prava 0770
mkdir ("adresar8", 0777); //vysledna prava 0770
?>
Maska v podstatě "odečítá" nastavenou hodnotu od zadaných práv v případě, kdy by překročily maskou stanovená práva. Nechcete-li, aby byla oprávnění maskou jakkoliv ovlivňována, vynulujte ji pomocí umask(0);.
U webserverů s PHP 5.3 nebo vyšší jsou všechny soubory/adresáře vlastněny stejným uživatelem, ať už byly vytvořeny v PHP nebo přes FTP. Pro čtení/zápis prostřednictvím PHP postačují i práva 700 (adresář) nebo 600 (soubor). Pokud má být soubor čitelný pro internetové prohlížeče (tedy přes http), nastavte souboru 644.
Na soubory s koncovkou .php (a ty, se kterými skript pracuje) se vztahuje pozice user (600), pro ostatní soubory volané přes http platí pozice others (004).
Podrobnější informace k popisovaným funkcím naleznete v dokumentaci PHP
Jakékoliv kopírování, publikování nebo šíření obsahu je výslovně zakázáno bez předchozího písemného souhlasu společnosti ONEsolution s.r.o.