SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

TYPO3 Kochbuch

TYPO3 Kochbuch zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

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

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 14.08.2006, 12:45:12
Rüeblibär Rüeblibär ist offline
Anfänger
 
Registriert seit: Aug 2006
Ort: Schweiz
Alter: 60
Beiträge: 3
Anfänger: Proggy mit NatSort...

Hallo Experten!

Ich bin erstens neu hier und zweitens ein PHP- Anfänger.
Um ein Sortierproblem zu lösen, habe ich mal einen PHP- Script für die Kommandozeile zusammengebastelt. Der macht alles ganz gut, doch möchte ich eure Kritik dazu.
Dann hätte ich noch ein paar Fragen:
1. Wenn in der Ausführung ein Fehler auftritt, wie kann ich an die Kommandozeile einen Error- Wert zurückgeben?
2. Eigentlich könnte man bei fast jeder Funktion eine Erfolgsprüfung machen und gegebenenfalls eine Fehlermeldung ausgeben. In den Beispielen, die ich gefunden habe, ist das nicht der Fall, so habe ich das auch mal weggelassen. Was meint ihr dazu?
3. Ziel ist schlussendlich eine kompilierte Version, d.h. dass ich ein Kommandozeilen- Tool habe. Könnt ihr mir da etwas empfehlen?

Hintergrund: Ich muss in einem CAD mittels 'User Functions' eine Liste nach 'natural order' sortieren. Die eingebaute Sortierfunktion unterstützt 'natural sort' nicht und selber machen ist mir zu aufwändig (habe es probiert). Als externe Lösung könnte ich auf der Kommandozeile die Sortierung durchführen lassen. Ein fertiges Programm habe ich nicht ergooglen können, also dann per PHP...

Programmcode:
PHP-Code:
#!/usr/bin/php
<?php

// NatSort.php - A simple program to sort text files in the so called 'natural order'
// ===========
//
// This code must be compiled to an executable file, then the CLI syntax would be:
// NatSort.exe
// The program looks for an input file called 'InFile.txt' then it will write a
// sorted file 'OutFile.txt'.
//
// Programmer: Rüeblibär
//
// Release 1.00: 2006-08-10 Final release
//
// Run this in a PHP environement: php NatSort.php
//


if($argc 1)   // Command line arguments are accessible with $argc and $argv
{
   echo 
"\nNatSort.exe - A program to sort a text file in the natural order";
   echo 
"\n-----------\n\n";
   echo 
"Syntax: NatSort.exe - or\n";
   echo 
"        NatSort.exe -h (-? or -help)\n\n";
   echo 
"The program looks for an input file 'InFile.txt' then it writes\n";
   echo 
"a sorted output file 'OutFile.txt'.\n\n";
   echo 
"The option '-h' leads to this text\n\n";
   echo 
"Version 1.00 / 2006-08-10 / Rüeblibär\n\n";
}
   else
{
   
$InFile  "InFile.txt";
   
$OutFile "OutFile.txt";

   if(
file_exists($InFile))
   {
      
$Array file($InFile);   // Load file in array
      
natsort($Array);   // Sort array

      
$FilePointer fopen($OutFile"w");   // Open text file
      
flock($FilePointerLOCK_EX);   // Locks the file for others
      
fseek($FilePointer0SEEK_SET);   // Set file pointer to the begin of file
      
ftruncate($FilePointer0);   // Deletes old contents
      
fseek($FilePointer0SEEK_SET);   // Again to the begin of file
      
foreach ($Array as $Line)
      {
         
fputs($FilePointer$Line);   // Write array in file (line for line)
      
}
      
flock($FilePointerLOCK_UN);   // Unlocks the file
      
fclose($FilePointer);   // Close the text file

      
echo "\nOK\n";
   }
   else
   {
      echo 
"\nFile Error: 'InFile.txt' not found\n";
   }
}

?>
__________________
Bye - Rüeblibär

Geändert von Rüeblibär (16.08.2006 um 12:08:25 Uhr)
Mit Zitat antworten
  #2  
Alt 15.08.2006, 17:18:07
Rüeblibär Rüeblibär ist offline
Anfänger
 
Registriert seit: Aug 2006
Ort: Schweiz
Alter: 60
Beiträge: 3
AW: Anfänger: Proggy mit NatSort...

... noch eine kleine Anmerkung: Den Code habe ich per Copy / Paste eingefügt. Dabei gehen scheinbar die Einrückungen verloren. Wenn ich den Text dann korrigieren will, d.h. die Einrückungen wieder einfügen - dann sind sie noch da!
Kann man eine solche Interpretation des Textes 'übersteuern'?
__________________
Bye - Rüeblibär
Mit Zitat antworten
  #3  
Alt 16.08.2006, 10:52:47
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: Anfänger: Proggy mit NatSort...

Wenn du die PHP-Tags des Boards [ php] und [ /php] (ohne die Leerzeichen) um deinen Code einfügst, wird dieser korrekt eingerückt und farblich hervorgehoben dargestellt.
Mit Zitat antworten
  #4  
Alt 16.08.2006, 12:09:13
Rüeblibär Rüeblibär ist offline
Anfänger
 
Registriert seit: Aug 2006
Ort: Schweiz
Alter: 60
Beiträge: 3
AW: Anfänger: Proggy mit NatSort...

... danke, habe ich nun so gemacht!
__________________
Bye - Rüeblibär
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Bilder auslesen, anzeigen, öffnen (Galerie) - ANFÄNGER ;) StiNgray PHP Grundlagen 36 15.09.2006 13:09:49
natsort Wanginator PHP Grundlagen 2 12.04.2006 01:02:56
Anfänger braucht eure hilfe Acki PHP Grundlagen 3 05.03.2006 11:52:26
Vorsicht ANFÄNGER!!! schorsch PHP für Fortgeschrittene und Experten 7 17.04.2003 18:33:21
natsort() einfügen Senekha PHP für Fortgeschrittene und Experten 0 28.11.2002 14:33:31


Alle Zeitangaben in WEZ +2. Es ist jetzt 08:37:07 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt