Wie schon öfter gezeigt, verwende mal trim auf den String!
							
						
					Variable ist da, aber läßt sich nicht verarbeiten - hmm????
				
					Collapse
				
			
		
	X
- 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
 Falsch!Diese Zeile erzeugt also den Wert "maus".
 in $x steht danach "maus\r\n"
 Comment
- 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
 Comment
- 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
 Habe ich, ohne trim ist ein Leerzeichen sichtbar mit eben nicht. Nur lässt die Wert von $t immer noch nicht prüfen, verarbeiten etc. Es sollte doch egal ob mit Leerzeichen oder nicht mit str_replace() oder mit preg_replace() der string in $t ersetzt werden können. Auch sollte $t = substr($t,-2) etwas anderes zeigen; Es geht aber NICHT!Original geschrieben von PHP-Desaster
 Verwende mal statt echo $var; ein var_dump. Dann siehst du auch leere Zeichen (bzw. die Zeichenkettenlänge ist größer als die Anzahl sichtbarer Zeichen). Last edited by janein; 07-12-2007, 13:44. Last edited by janein; 07-12-2007, 13:44.
 Comment
- 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
 Wenn du nicht sofort ein testbares Beispiel zeigst, werde ich dir niemals mehr helfen!! Mittlerweile fühle mich so langsam verarscht und habe ich einen richtig dicken Hals.PHP Code:<?php
 ob_start(); ?>
 europa-tiere
 <?php
 $t = ob_get_contents();
 ob_end_clean();
 $string = $t;
 $x = str_replace("europa-tiere","maus",$string);
 $t=$x;
 $t = str_replace("maus","test",$t);
 echo $t ;
 ?>
 
 Immer nur heulen: "tuts nicht tuts nicht..." aber nicht sagen, was es nicht tut... Grrrr...
 Comment
- 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
 Nicht auch noch verzweifeln, es reicht wenn ich es bin und danke für Deinen Hinweis.Original geschrieben von combie
 Wenn du nicht sofort ..., werde ich dir niemals mehr helfen!! ...
 
 Einen Schritt näher:PHP Code:<?php
 $x = str_replace("europa-tiere","maus",$string);
 ....
 ob_start(); ?>
 europa-tiere
 <?php
 $t = ob_get_contents();
 ob_end_clean();
 
 $t = substr($t,0,-2);
 echo $t ;
 ?>
 $t zeigt mit substr($t,0,-2) europa-tie, was heißt, dass die $t noch nicht "maus" ist obwohl echo $t maus zeigt. Die Frage ist jetzt, wie schaffe ich es, dass europa-tiere maus wird bevor es an $t übergeben wird? Ich dachte das erreiche ich mit ob_start(), scheint jedoch nicht der Fall zu sein.Last edited by janein; 07-12-2007, 14:02.
 Comment
- 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
 Nein!!
 echo $t; zeigt bei mir europa-tiere !!!!!
 
 Ausserdem, hast du das mit dem "testbarem Code" immer noch nicht begriffen!!!Parse error: syntax error, unexpected '.' in H:\Programme\xampp\htdocs\fragmente\R0675787.php on line 3
 Comment
- 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
 Wenn das wieder dein ganzer Code ist, dann stellt sich mir die Frage wie du drauf kommst, dass du einen str_replace() machen könntest bevor die entsprechenden Vars ihre Werte haben...Die Frage ist jetzt, wie schaffe ich es, dass europa-tiere maus wird bevor es an $t übergeben wird?
 In deinen Täumen vielleicht...was heißt, dass die $t noch nicht "maus" ist obwohl echo $t maus zeigt 
 Also ich persönlich würde die Ersetzung machen nachdem ich den Wert aus dem Buffer ausgelesen habe. Vorher macht echt keinen Sinn...Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten
 
 [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
 Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
 Comment
- 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
 ich glaube ich habe das gleiche, bzw ein ähnliches problem.. ich hoffe mal ich bekomme es hin das verständlich zu erklären... also..
 
 ich lese mit ob_get_clean() die ausgabe vom puffer in die variable $out ein.. diese kann ich dann mit echo ausgeben, sowie auch mit preg_replace weiterverarbeiten.. klappt alles wie es soll
 
 PHP Code:
 ob_start();
 echo "ausgabe";
 $out = ob_get_clean();
 
 echo $out;
 
 $suche = "/a/";
 $ersetze = "ersatz";
 $text = preg_replace($suche, $ersetze, $out);
 
 echo $text;
 
 jetzt das Problem: statt "ausgabe" auszugeben, gebe ich einen html code vom cms joomla aus, der html aus der datenbank holt. ich habe also folgenden php code:
 
 
 PHP Code:
 ob_start();
 echo "<jdoc:include type=\"modules\" name=\"breadcrumb\" />";
 $out = ob_get_clean();
 
 echo $out;
 
 $suche = "/a/";
 $ersetze = "ersatz";
 $text = preg_replace($suche, $ersetze, $out);
 
 
 echo $text;
 
 
 
 rufe ich das script nun auf, wird die variable $out auch per echo ausgegeben .
 
 (die ausgabe sieht wie folgt aus):
 
 
 <span class="breadcrumbs pathway">
 <a href="http://www.google.de" class="pathway">Home</a> <img src="/images/arrow.png" alt="" /> seite2</span>
 
 
 
 ABER: ich kann die variable nicht weiterverarbeiten!! mit preg_replace und anschießendem echo $text wird nichts ausgeben, als würde $out nicht existieren..
 
 sehr merkwürdig, ist ja schließlich bis auf Zeile 2 der selbe Code jeweils..
 Leider ist das Beispiel für Leute ohne Joomla nicht reproduzierbar, deswegen ein Sprry schonmal vorab, vielleicht hat ja trotzdem jemand eine Idee woran es liegen könnte.. Last edited by kanzy; 09-03-2008, 18:36. Last edited by kanzy; 09-03-2008, 18:36.
 Comment
 
          

Comment