php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 29.05.2005, 02:10  
Gast
 
Beiträge: n/a
Standard zeichen erzetzen mit "str_replace"

Hallo allen,

Hab ich ein Problem!

Ich will verschiedene zeichen ersetzen durch bilder:

PHP-Code:
<?php
$data 
'eva./';
$search = array('/''.''a''v''e');
$replace = array('[img]images/SLASH.gif[/img]'
                 
'[img]images/PUNKT.gif[/img]'
                 
'[img]images/A.gif[/img]'
                 
'[img]images/V.gif[/img]'
                 
'[img]images/E.gif[/img]'); 
$result str_replace($search$replace$data); 
print_r($result);
?>
Alle buchstaben, auch "." und "/" werden erzetzt im html code img:

Code:
[img]images/E.gif[/img][img]imag<img src=[/img]s/V.gif">[img]imag<img src=[/img]s/A.gif">[img]im<img src=[/img]s/A.gif">g[img]images/E.gif[/img]s/PUNKT.gif">[img]im<img src=[/img]s/A.gif">g[img]images/E.gif[/img]s/SLASH[img]im<img src=[/img]s/A.gif">g[img]images/E.gif[/img]s/PUNKT.gif">gif">
Und ich brauche einfach nur:

Code:
[img]images/E.gif[/img][img]images/V.gif[/img][img]images/A.gif[/img][img]images/PUNKT.gif[/img][img]images/SLASH.gif[/img]
Wo ist meine Problem? Ich biette um HILFE!

Schonen Tag noch Alen.
P.S. Sorry für mein Deutsch
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 29.05.2005, 08:41  
Erfahrener Benutzer
 
Registriert seit: 22.01.2005
Beiträge: 610
Connar befindet sich auf einem aufstrebenden Ast
Standard

Dadurch, dass du / durch [img]images/SLASH.gif[/img] ersetzt, entsteht ein neues A & E (imAgEs/slAsh). Diese werden danach auch umgestellt, also es entstehen auch <img .. /A.gif">

Versuch mal lieber den String auseinander zu nehmen in seine Bestandteile und ihn dann zu ersetzen.

Code:
for($i = 0; $i <= 4; $i++)
{
  if($data{$i} == ".") $replace[$i] = "<img src=\"images/PUNKT.gif\">";
  elseif($data{$i} == "/") $replace[$i] = "<img src=\"images/SLASH.gif\">";
  else $replace[$i] = "<img src=\"images/".$data{$i}.".gif\">";
}
foreach($replace as $zeichen)
{
  $alles .= $zeichen;
}

echo $alles;
[EDIT]Man könnte es natürlich auch gleich in $alles speichern:
Code:
for($i = 0; $i <= 4; $i++)
{
  if($data{$i} == ".") $alles .= "<img src=\"images/PUNKT.gif\">";
  elseif($data{$i} == "/") $alles .= "<img src=\"images/SLASH.gif\">";
  else $alles .= "<img src=\"images/".$data{$i}.".gif\">";
}

echo $alles;
[/EDIT]


Falls der String variable Länge hat oder noch andere Zeichen, kannst du des dann ja anpassen.


MFG Connar
Connar ist gerade online  
Alt 29.05.2005, 11:16  
Erfahrener Benutzer
 
Registriert seit: 18.07.2004
Beiträge: 2.162
PHP-Kenntnisse:
Fortgeschritten
Basti
Standard

A bisserl schöner gehts scho:
PHP-Code:
<?php
$data 
'eva./';
$replace = array(
    
'/' => '[img]images/SLASH.gif[/img]',
    
'.' => '[img]images/PUNKT.gif[/img]',
    
'a' => '[img]images/A.gif[/img]',
    
'v' => '[img]images/V.gif[/img]',
    
'e' => '[img]images/E.gif[/img]');

for (
$string=''$len=strlen($data), $i=0$i<$len$i++) {
    
$string .= isset($replace[$data[$i]]) ? $replace[$data[$i]] : $data[$i];
}
?>
Basti
Basti ist offline  
Alt 30.05.2005, 11:34  
Gast
 
Beiträge: n/a
Standard

Hi,

Vielen Dank an Connar und Basti.
Habe beides versucht, und bei beiden hat es geklapt!

Schönen Tag noch...
 
Alt 01.06.2005, 13:31  
Gast
 
Beiträge: n/a
Standard

Neue Frage:

Wie kann ich ein wort ersetzen, jedoch nicht ein größerers Wort, dass dieses Wort beinhaltet?

also zb:
Ersetzen will ich test
aber ersetzt soll test nicht wenn es in einem Wort stekt bsp: Englischtest

->MrBlack
 
Alt 01.06.2005, 13:34  
Erfahrener Benutzer
 
Registriert seit: 27.10.2003
Beiträge: 530
Thice
Standard

Nicht getestet:
PHP-Code:
<?php
$text 
str_replace(" test ""Neues Wort"$text);
?>
__________________
kintzebros.de | KintzeBros Home Entertainment
2061. Nach dem Frieden | kurzfilm
Paula | spielfilm
Thice ist offline  
Alt 01.06.2005, 13:36  
Gast
 
Beiträge: n/a
Standard

ich glaub ich bin wohl voll verpeilt thx @Thice.

->MrBlack
 
Alt 01.06.2005, 13:38  
Gast
 
Beiträge: n/a
Standard

Der code klappt nicht.
 
Alt 01.06.2005, 13:48  
Erfahrener Benutzer
 
Registriert seit: 27.10.2003
Beiträge: 530
Thice
Standard

Wird trotzdem alles ersetzt?

Hast du es mal mit preg_replace() versucht?

MfG
Andy
__________________
kintzebros.de | KintzeBros Home Entertainment
2061. Nach dem Frieden | kurzfilm
Paula | spielfilm
Thice ist offline  
Alt 01.06.2005, 13:48  
Gast
 
Beiträge: n/a
Standard

<?php
$text = str_replace("test", "Neues Wort", $text);
?>

So funktioniert das ganze, aber das gilt nicht für zb Deutschtest.
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Benutze Zeichen anzeigen! cokotech Datenbanken 3 06.06.2008 18:24
erste 7 zeichen überprüfen aircrash PHP Tipps 2008 1 28.09.2007 09:11
Wieviel Pixel hat ein Zeichen? Ausmessen eines DIV-Container webazubi PHP-Fortgeschrittene 4 06.07.2006 14:52
Unsichtbares Zeichen - IE vs. Firefox Cyberbob_at_tot PHP Tipps 2006 13 13.02.2006 17:23
[Erledigt] kleiner und größer Zeichen ausklammern??? PHP Tipps 2007 9 10.11.2005 09:45
[Erledigt] XML mit chinesischen Zeichen PHP-Fortgeschrittene 7 30.10.2005 13:26
Kombination: Zeichen zählen / - ersetzen King2k PHP Tipps 2005-2 2 24.10.2005 20:44
Variable nach x Zeichen abschneiden? Calli PHP Tipps 2005-2 4 29.09.2005 15:44
100 zeichen langen key erzeugen PHP Tipps 2005-2 25 16.09.2005 00:49
auf Mysql Datenbank Zeichen ersetzen durch andere ??? Tango Beitragsarchiv 1 01.08.2005 01:48
auf Mysql Datenbank Zeichen ersetzen durch andere ??? Tango PHP Tipps 2005-2 0 31.07.2005 20:14
[Erledigt] nur x zeichen zeigen PHP Tipps 2004-2 2 17.12.2004 15:10
nicht erlaubte Zeichen im SQL - String Datenbanken 0 16.10.2004 11:47
Die 1. 15 Zeichen anzeigen imported_Lumio PHP Tipps 2004 2 23.08.2004 16:16

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php slash ersetzen, javascript replace mehrere zeichen, php str_replace slash ersetzen -backslash, str_replace alles vor einem zeichen, mysql wort mit slash ersetzen, mysql zeichen slash ersetzen, php replace mehrere zeichen, http://www.php.de/php-tipps-2005/23818-zeichen-erzetzen-mit-str_replace.html, php replace img scr url, img str_replace, str.replace(/<img, php punkte entfernen, zeichen für <img

Alle Zeitangaben in WEZ +2. Es ist jetzt 10:51 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.