Dateirechte per Php auslesen

Für eine Dateidownloadliste habe ich heute eine kleine Funktion geschrieben, welche die Zugriffsrechte einer Datei auslesen kann. Die Php-Funktion “fileperms” kommt hier zum Tragen.

1
2
3
4
5
6
7
8
9
10
11
12
< ?php
  function Datei_Rechte_Lesen($Datei, $Octal = true) {
   if(!file_exists($Datei)) {
     return false;
   }
   else {
     $Rechte = fileperms($Datei);
     $Temp = $Octal ? 2 : 3;
     return substr(decoct($Rechte), $Temp);
   }
}
?>

Aufgerufen wird diese einfach mit “echo(Datei_Rechte_Lesen($MeineDatei));“.

Quellcode einer HTML-Datei ausgeben

Das Skript öffnet eine Internetadresse, ließt den HTML-Quellcode in eine Variable und durchläuft Zeile für Zeile diese Variable. Mit Hilfe der Funktion “htmlspecialchars” werden die Tags wie normaler Text angezeigt und nicht vom Browser verarbeitet.

1
2
3
4
5
6
7
8
9
< ?php
// Quellcode einlesen
$Zeilen = file('http://www.jaeckle.de/');
 
// Zeilen durchlaufen
foreach ($Zeilen as $ZeilenNr => $Zeile) {
	echo("Zeile #:<b> {$ZeilenNr}</b>: ".htmlspecialchars($Zeile)."<br />\n");
}
?>

Anzahl der Dateien in einem Verzeichnis

Es folgt ein Php-Script, welches die Dateianzahl in einem Ordner anzeigt.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
< ?php
// Variablen festlegen
	$Pfad_Home = '.';
  $Zaehler = 0;
 
	// Inhalt auslesen
  $OrdnerInhalt = opendir($Pfad_Home);
 
	// Ordnerobjekte durchlaufen
  while($Datei = readdir($OrdnerInhalt)) {
		// Ergebnisse filtern
    if($Datei !== ''  && $Datei !== '.' && $Datei !== '..') {
      $Zaehler ++;
		}
  }
 
	// Ergebnis ausgeben
  echo($Zaehler.' Dateien wurden gefunden.');
?>

Größe einer Datei ermitteln

Möchte man die Dateigröße per Php ermitteln, so gibt es hierfür die Funktion “filesize“. Diese erwartet einen Dateinamen ggf. mit Verzeichnispfad als Parameter.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
< ?php
	// Dateiname
	$Datei = 'Testdatei.php';
 
	// Groesse einlesen
  $Groesse = filesize($Datei);
 
	// Groesse von Byte in KB umrechnen
  $Groesse = $Groesse / 1024;
 
	// Groesse auf zwei Stellen runden
  $Groesse = round($Groesse, 2);
 
	// Groesse ausgeben
  echo('Die Datei '.$Datei.' hat eine Groesse von '.$Groesse.' KB.');
?>

Quersumme von Strings oder Zahlen bilden

Die folgende Funktion “Quersumme” bildet die Quersumme einer Zahlenreihe, oder von Zeichenketten.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
< ?php
  function Quersumme($Zahl) {
    settype($Zahl, 'string');
    $Res = 0;
 
    for($i = 0; $i < strlen($Zahl); $i ++) {
      $Res = $Res + $Zahl[$i];
    }
    return $Res;
  }
 
  echo(Quersumme(6841));
  echo('<br />'.Quersumme('Test');
?>

Info:
Diese kann z.B. für die Berechnung von Prüfsummen verwendet werden.