PHP - chmod


Návody pro C4


Funkce chmod() umožňuje nastavit přístupová práva souboru nebo adresáře. Funkce má dva parametry:

Funkce chmod() vrací TRUE po úspěšném provedení, v případě neúspěchu vrací FALSE.

Zápis přístupových práv v osmičkové soustavě je vysvětlen v návodu Přístupová práva k souborům.

Následuje příklad skriptu, který nastaví přístupová práva 444 (symbolickým zápisem -r--r--r--) na soubor config.php, který je umístěn v kořenovém adresáři webu:

<?php

$cesta_k_souboru = $_SERVER['DOCUMENT_ROOT'].'/config.php';
$return = chmod($cesta_k_souboru, 0444);

if($return) echo "Chmod probehl uspesne.";
else echo "Chmod skoncil chybou.";

?>

Všimněte si, že v kódu jsou přístupová práva zadána s nulou na začátku, tj. je tam 0444. Pokud bychom hodotu přístupových práv zadali bez nuly na začátku, tj. ve tvaru 444, PHP by ji chápalo jako číslo v desítkové soustavě (což je po převodu do osmičkové soustavy jiné číslo a sice 674). Když před číslo napíšeme nulu, tak ho PHP interpretuje jako zápis v osmičkové soustavě. Proto nezapomeňte v PHP kódu před osmičkovou hodnotou přístupových práv psát nulu, jinak se nastaví úplně jiná práva (po převodu z desítkové soustavy do osmičkové) než jste chtěli.

Standardní práva

Pokud v PHP vytváříte soubory a adresáře, kopírujete soubory nebo děláte jiné operace, při kterých se vytváří nové soubory, tak se nové soubory (resp. adresáře) vytvoří automaticky se standardními právy, což je v případě souborů 644 a v případě adresářů 2755 nebo 755. Soubory nebo adresáře se standardními právy jsou plně funkční jak z webu (na soubor se standardními právy lze přistoupit přes webový prohlížeč), tak v PHP skriptech (v adresáři se standardními právy lze z PHP skriptu vytvářet soubory a podadresáře). Na serverech hostingu Webhosting C4 není nutné pomocí funkce chmod() nastavovat na nově vytvořené soubory nebo adresáře práva na 777. Jestli má soubor (nebo adresář) standardní práva nebo 777, z hlediska funkčnosti v tom není vůbec žádný rozdíl.

Související odkazy

Diskuzní fórum pro článek PHP - chmod

Nové diskuzní téma můžete založit v sekci PHP, MySQL.

Článek zatím neobsahuje žádné diskuzní téma.

Změny a kontroly

K dispozici je kompletní přehled všech změn a kontrol v tomto návodu.


PHP - chmod
Publikace: 16.5.2009
Přehled změn a kontrol
Diskuzní fórum
  • Webové aplikace
  • Tvorba web stránek
  • PHP, MySQL

forum.c4.cz