Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Programmierung mit PHP  Teil von  Dateisystem via PHP
Professional CronJob-Service

Suche

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: SELFPHP Forum ::

Fragen rund um die Themen PHP?
In über 130.000 Beiträgen finden Sie sicher die passende Antwort!  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 
 
Nützliche Dateioperationen: Seite 2

SELFPHP ist Shopware Solution Partner
Shopware ist ein vielfach ausgezeichnetes Onlineshop-System der shopware AG, das auf PHP. Zend Framework und SQL basiert.
SELFPHP unterstützt Sie als Shopware Solution Partner bei der Konzeption, Programmierung und Realisierung Ihres Onlineshops und passt Shopware bei Bedarf an Ihre Unternehmensbedürfnisse an. Weitere Informationen



Zeile per Zufall – Spruchgenerator

Wie wäre es mit einem Spruchgenerator, der bei jedem Aufruf zufällig eine Zeile ausliest?

<?php

// Zufallsgenerator
function gen_zahl($max = 1) {
  $faktor = 1000000;
  return ((mt_rand(1,$faktor * $max)-1)/$faktor);
}

// Spruchgenerator
function gen_spruch($dateiname) {
$zeilen_nr = 0;

$datei = fopen($dateiname,'r');
while (! feof($datei)) {
  if ($z = fgets($datei,1048576)) {
    $zeilen_nr++;
    if (gen_zahl($zeilen_nr) < 1) {
      $spruch = $z;
    }
  }
}
fclose($datei);
return $spruch;
}

// Ausgabe
echo gen_spruch("daten.txt");

?>

Wie Sie feststellen werden, habe ich die Zufallszahlen-Funktion gen_zahl() von der Spruchgenerator-Funktion gen_spruch() getrennt, damit Sie die Zufallszahlen-Funktion auch für andere Zwecke nutzen können.

Sie können es natürlich auch einfacher haben, wenn Sie die Funktion file() und anschließend die Funktion shuffle() einsetzen.

Beispiel

<?php

// Spruchgenerator
function gen_spruch($dateiname) {
  $daten = file($dateiname);
  shuffle ($daten);
  return $daten[0];
}

// Ausgabe
echo gen_spruch("daten.txt");

?>


Datei ohne eine temporäre Datei ändern

Stellen Sie sich vor, Sie wollen an einer Datei Änderungen vornehmen, dies jedoch ohne eine temporäre Datei zwischenzuspeichern. In diesem Fall öffnen Sie eine Datei mit dem Modus »r+« und korrigieren nach dem Schreiben der Änderungen die Länge der Datei mithilfe der Funktion ftruncate(). Diese ist in der Lage, eine Datei auf eine angegebene Länge zu kürzen.

Beispiel

<?php

// Datei zum Lesen und Schreiben öffnen
$datei = fopen('daten.txt','r+');

// Gesamte Datei einlesen
$daten = fread($datei,filesize('daten.txt'));

// Konvertiert *Wort* zu <b>Wort</b>
$daten = preg_replace('@\*(.*?)\*@i','<b></b>',$daten);

// Konvertiert /Wort/ zu <u>Wort</u>
$daten = preg_replace('@/(.*?)/@i','<u></u>',$daten);

// Dateizeiger an den Anfang zurücksetzen
rewind($datei);

// Neue Daten in die Datei schreiben
if (-1 == fwrite($datei,$daten)){
  echo "Fehler!";
}

// Dateilänge auf die tatsächliche Datengröße anpassen
ftruncate($datei,ftell($datei));

// Datei schließen
fclose($datei);

?>




Nützliche Dateioperationen Seite 1
 




:: Premium-Partner ::

Webhosting/Serverlösungen

Pixel X weitere Premium-Partner
 

:: SELFPHP Sponsor ::

ionCube Ltd. weitere Sponsoren
 


:: Buchempfehlung ::

Das Zend Framework

Das Zend Framework zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Webhosting/Serverlösungen

Suchen Sie den für Sie passenden IT-Dienstleister für Ihr Webhosting-Paket oder Ihre Serverlösung?

Sie sind nur ein paar Klicks davon entfernt!


 

Ausgewählter Tipp im Bereich PHP-Skripte


Datumsangaben in Deutsch anzeigen

Weitere interessante Beispiele aus dem SELFPHP Kochbuch finden Sie im Bereich PHP-Skripte
 

SELFPHP Code Snippet


Tabellen in einer MySQL-Datenbank analysieren

Weitere interessante Code Snippets finden Sie auf SELFPHP im Bereich PHP Code Snippets
 
© 2001-2024 E-Mail SELFPHP Inh. Damir Enseleit, info@selfphp.deImpressumKontakt
© 2005-2024 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de