"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

BIG PHP Problem

bBU.CyTrobIc 24.10.2003 - 19:12 1064 24
Posts

Philipp

Here to stay
Registered: Jul 2001
Location: Wien
Posts: 1922
Zitat von bBU.CyTrobIc
$data = ereg_replace("\n", "", $data);

Warum verwendest du nicht gleich trim?

Also
Code: PHP
$data = trim($data);

Brother Quintus

(!) o_O :O ^_^
Avatar
Registered: Oct 2003
Location: Vienna, Austria
Posts: 657
er functions kommen nicht in strings ;) und wensnt variablen namen willst dann mach
\$variable

oder '$variable'

das zweite is aber ned zu empfelen weils ned imemr geht und nicht gut aussieht ;)
Gordon

bBU.CyTrobIc

#include "billrulz.h"
Avatar
Registered: Oct 2000
Location: Hamburg
Posts: 1875
Funtzt nicht wirklich, hier nochma der komplette quelltext:

Code: PHP
<?php

$name = "test";
$midd = "blau";
$endu = ".htm";

$vor  = "\$source_pfad = ereg_replace(\"\\n\", \"\", \$source_pfad);";
$nac  = "\$source_pfad = ereg_replace(\"\\r\", \"\", \$source_pfad); \$source_pfad = ereg_replace(\"\\n\", \"\", \$source_pfad);";

for($seite = 1; $seite <= 16; $seite++){

	for($bac = 1; $bac <= 5; $bac++){

		$file = fopen($name.$seite.$midd.$bac.$endu, "r");
		$ziel = fopen("temp.txt", "w");
		
		while(!feof($file)){

			$zeile = fgets($file, 1024);
			$zeile = ereg_replace($vor, $nac, $zeile);
			fputs($ziel, $zeile);
		}
		
		fclose($file);
		fclose($ziel);
		
		copy("temp.txt", $name.$seite.$midd.$bac.$endu);
		unlink("temp.txt");
	}
}

?>

Der Ersetzt mir das einfach nicht, jemand ne idee ?
Thx

watchout

Legend
undead
Avatar
Registered: Nov 2000
Location: Off the grid.
Posts: 6845
also ich versteh nicht was du mit diesem code erreichen willst, versuchs mal mit dokumentieren :rolleyes: vielleicht kommst dann sogar selber auf dein fehler drauf

bBU.CyTrobIc

#include "billrulz.h"
Avatar
Registered: Oct 2000
Location: Hamburg
Posts: 1875
Also das script öffnet Html Dateien wo PHP Code mit drin ist, diese heissen:

test1blau1.htm bis test16blau5.htm, es sind 80 Dateien.

In jeder Datei sieht eine Zeile so aus:

Code: PHP
$source_pfad = ereg_replace("\n", "", $source_pfad);

Die $source_pfad liest eine Zeile aus einer Datei die eine Dateinamen enthält, der zur weiteren verwendung genutzt wird.

Da ich die Dateien jetzt auf Windows XP portiert habe, laufen sie da leider nicht mehr, da ein Zeilenumbruch \r\n aussieht, also muss ich nicht nur das \n aus der variable $source_pfad rausfiltern sondern auch das \r, und dies in jeder Datei, per Hand 80 mal hab ich keine lust zu, deswegen das Script aber es funktioniert nicht, er ersetzt mir die Zeile nicht die dort angegeben ist :(

Philipp

Here to stay
Registered: Jul 2001
Location: Wien
Posts: 1922
Hast du es jetzt schon mit trim versucht? Normalerweise ist diese Funktion dazu da solche Dinge zu entfernen ;)

bBU.CyTrobIc

#include "billrulz.h"
Avatar
Registered: Oct 2000
Location: Hamburg
Posts: 1875
ich versuchs mal mit hilfe von trim und php.net *Gg

bBU.CyTrobIc

#include "billrulz.h"
Avatar
Registered: Oct 2000
Location: Hamburg
Posts: 1875
nee funtzt nich :(

ich bräucht nen Script was mir innerhalb einer Datei, diese Zeile:

Code: PHP
$source_pfad = ereg_replace("\n", "", $source_pfad);

gegen diese beiden:

Code: PHP
$source_pfad = ereg_replace("\r", "", $source_pfad);
$source_pfad = ereg_replace("\n", "", $source_pfad);

ersetzt. :( bin zu blöde. ;)

watchout

Legend
undead
Avatar
Registered: Nov 2000
Location: Off the grid.
Posts: 6845
Zitat von bBU.CyTrobIc
nee funtzt nich :(

ich bräucht nen Script was mir innerhalb einer Datei, diese Zeile:

Code: PHP
$source_pfad = ereg_replace("\n", "", $source_pfad);

gegen diese beiden:

Code: PHP
$source_pfad = ereg_replace("\r", "", $source_pfad);
$source_pfad = ereg_replace("\n", "", $source_pfad);

ersetzt. :( bin zu blöde. ;)
ah, jetz versteh ich :)

mach einfach str_replace(), da du ja genau weisst was du ersetzen willst is das die beste lösung :) und generell is str_replace schneller, also wär die beste lösung:
Code: PHP
$needle = '$source_pfad = ereg_replace("\n", "", $source_pfad);'
$replace = '$source_pfad = str_replace("\n", "", $source_pfad);
$source_pfad = str_replace("\r", "", $source_pfad);'

$line = str_replace($needle, $replace, $line);
hth ;)

ps: ich hoffe ich hab nicht die parameter verwechselt :)

bBU.CyTrobIc

#include "billrulz.h"
Avatar
Registered: Oct 2000
Location: Hamburg
Posts: 1875
thx watchout ! ich versuchs nachher mal :)

EDIT: Funtzt !! Superdanke *gg*

Sagmal, warum macht str_replace das aber ereg nich ?
Bearbeitet von bBU.CyTrobIc am 26.10.2003, 22:57
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz