Gibt es in PHP sowas wie RIGHT() in VBA???
Andreas
- php
Hallo!
Ich habe ein Problem:
Ich schreibe ja meine Daten am Ende immer in eine txt, damit diese offline verwendet werden können. Jetzt wolte ich ein Script schreiben, welches die Datei wieder zurücksetzt aber Sicherheits halber noch eine Sicherungskopie der Datensätze anfertigt, nicht das was verloren geht!
Der Teil sieht so aus:
$Bestelldatei = "Bestellungen.txt";
$data1 = fopen($Bestelldatei, "r");
$Bestellungen = fread($data1, filesize($Bestelldatei));
fclose($data1);
$backupdatei = "Sicherung.txt";
$data2 = fopen($backupdatei, "a+");
fwrite($data2, $Sicherung);
fclose($data2);
Das doof eist jetzt nur, dass die txt Überschriften enthalten muß, eigentlich ja kein Problem, nur wenn ich so den gesamten Inhalt einfach in die Sicherung.txt schreibe, hab ich überall die Überschrift dazwischenhängen:-(
In VBA gibt es ja eine Funktion "RIGHT(Variable, Zeichen)" mit der man z.B. letzten 100 Zeichen einer Variable auslesen kann.
Gibt es was vergleichbares auch in PHP?
Außerdem wäre es damit ja noch nicht getan, ich weiß ja leider nicht wieviele Zeichen in der Variable stehen, oder kann man das irgendwie auch rausbekommen???
Denn wenn ich z.B. 55 Zeichen für die Überschriften habe, und insgesamt 1333, könnte man ja einfach sowas wie RIGHT(Variable, 1333-55) machen.
Wer weiß wie ich das am besten mache nd was es da für Möglichkeiten in PHP gibt???
Leider finde ich bei RIGHT + PHP immer nur was zu Textausrichtungen:-(
Gruß
Andreas
In VBA gibt es ja eine Funktion "RIGHT(Variable, Zeichen)" mit der
man z.B. letzten 100 Zeichen einer Variable auslesen kann.
Gibt es was vergleichbares auch in PHP?
Besorg dir doch bitte mal die Original-Anleitung zu PHP von http://php.net.
Die sieht zwar auf den ersten Blick vom Layout her ganz fürchterlich aus, aber gleich im Index steht unter "Function Reference" ein Eintrag "String functions". Auf der Seite findest du ein reichhaltiges Angebot an Funktionen zur Textmanipulation, unter anderem "substr - Return part of a string". Suchdauer: 20 Sekunden, im schlimmsten Fall.
Gruß,
soenk.e
Tag
In VBA gibt es ja eine Funktion "RIGHT(Variable, Zeichen)" mit der man z.B. letzten 100 Zeichen einer Variable auslesen kann.
Gibt es was vergleichbares auch in PHP?
Jein.
substr($variable, strlen($variable)-100, 100);
Gibt die letzten 100 Zeichen aus $variable zurück.
Ciao,
Harry
Moin
substr($variable, strlen($variable)-100, 100);
Gibt die letzten 100 Zeichen aus $variable zurück.
Damit das nicht aussieht als wäre PHP übermäßig kompliziert:
substr($variable, -100);
gibt auch die letzten 100 Zeichen zurück.
--
Henryk Plötz
Grüße aus Berlin
Hi!
JA DANKE, das sieht schon gut aus, nur wie könnte ich es wohl realisieren, die ersten 50 Zeichen "loszuwerden"??? Würde ja schon helfen, wenn man die Anzahl der Zeichen in einer Variable herausbekommen könnte!
Denn leider weiß ich ja nicht genau, wieviele Zeichen nach den ersten 50(die die Überschriften enthalten) kommen?!
Gruß
Andreas
Hallo Andreas,
JA DANKE, das sieht schon gut aus, nur wie könnte ich es wohl realisieren, die ersten 50 Zeichen "loszuwerden"??? Würde ja schon helfen, wenn man die Anzahl der Zeichen in einer Variable herausbekommen könnte!
Denn leider weiß ich ja nicht genau, wieviele Zeichen nach den ersten 50(die die Überschriften enthalten) kommen?!
Schau Dir doch einfach die Arbeitsweise der Funktion an:
string substr(string str, int start [, int length])
Mit Funktionen wie strpos() und strlen() usw. kommst Du hoffentlich voran.
Eine sehr gute Funktionsreferenz bietet http://www.zugeschaut-und-mitgebaut.de/php.
MfG, Thomas
Danke Euch,
Ging ja viel einfacher als in VBA, perfekt!
Gruß
Andreas
Hallo Andreas!
nur wie könnte ich es wohl realisieren, die ersten 50 Zeichen "loszuwerden"???
na, auch mit substr:
http://www.php.net/manual/de/function.substr.php
Lies dir mal die Beispiele durch und probier damit ein wenig herum, es ist ganz einfach.
Gruss,
Carsten
Hi Carsten,
Danke für den Tip, führe mir das dann mal zu Gemüte. Aber jetzt sag mir doch bitte mal, woher Du wußtest, wo ich herkomme?????
Das läßt mir irgendwie keine Ruhe!!!
Gruß
Andreas