Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] problem z preg_replace
Crom
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 30.04.2007

Ostrzeżenie: (0%)
-----


Mam konstrukcję:

  1. <?php
  2. $tab = array('http'=>'ftp');
  3. echo preg_replace('/http/',$tab["$0"],'http');
  4. ?>



i dostaje komunikat:
„Notice: Undefined index: $0 in E:\Programy\Internet\VertrigoServ\www\FFCreation\zadanie_c1\index.php on line xxx”

Widziałem podobne konstrukcje z tablicą w replacement, nawet na tym forum (http://forum.php.pl/index.php?showtopic=71669) i wszystko było OK a u mnie nie działa.

Czy ktoś potrafi mi powiedzieć co robie nie tak?

PS. Mam PHP 5.2.1
Go to the top of the page
+Quote Post
Qvazar
post
Post #2





Grupa: Zarejestrowani
Postów: 41
Pomógł: 3
Dołączył: 28.10.2005

Ostrzeżenie: (0%)
-----


sprawdź $tab['http'] zamiast $tab["$0"]
Go to the top of the page
+Quote Post
Crom
post
Post #3





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 30.04.2007

Ostrzeżenie: (0%)
-----


Cytat(Qvazar @ 16.07.2007, 20:47:40 ) *
sprawdź $tab['http'] zamiast $tab["$0"]


Chodzi właśnie o dynamiczność. Czyli klucz musi być dopasowany wyrażeniem regularnym.
Go to the top of the page
+Quote Post
Siner
post
Post #4





Grupa: Zarejestrowani
Postów: 159
Pomógł: 6
Dołączył: 2.01.2004

Ostrzeżenie: (0%)
-----


A nazywanie zmiennych? Chyba nie można nazywać zmiennych numerycznie.


--------------------
Go to the top of the page
+Quote Post
Crom
post
Post #5





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 30.04.2007

Ostrzeżenie: (0%)
-----


Cytat(Siner @ 16.07.2007, 22:52:47 ) *
A nazywanie zmiennych? Chyba nie można nazywać zmiennych numerycznie.


Bo to taka "zmienna" specjalna, dziala tylko w preg_replace.

http://pl.php.net/manual/pl/function.preg-replace.php
Go to the top of the page
+Quote Post
Kicok
post
Post #6





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

Ostrzeżenie: (0%)
-----


  1. <?php
  2.  
  3. $tab = array( 'http' => 'ftp' );
  4. echo preg_replace( '/http/e', '$tab["$0"]', 'http' );
  5.  
  6. ?>


http://pl2.php.net/manual/pl/reference.pcr...n.modifiers.php


--------------------
"Sumienie mam czyste, bo nieużywane."
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 15:32