Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [WR] Poraz kolejny z pomocą sie zwracam, Wyrażenia Regularne
id4
post 22.06.2005, 17:44:55
Post #1





Grupa: Zarejestrowani
Postów: 223
Pomógł: 1
Dołączył: --
Skąd: Rogożnik /K-ce/

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


Witam

Poraz kolejny z pytaniem o Wyrażenia Regularne.
Pisząc funkcję napotkałem na problem, którego nie potrafię obejść.
Może ktoś będzie wiedział, jak napisać coś takiego:

  1. <?php
  2.  
  3. // funkcja umieszczania komponentow
  4. function htmlString($base,$id){
  5.  $query=&#092;"select code from hr_html where id='$id'\";
  6.  $result=mysql_query($query);
  7.  if($dane=mysql_fetch_array($result))
  8.  return $dane[code];
  9. }
  10.  
  11. // funkcja aktywowania linkow
  12. function activeString($base,$string){
  13.  $string = stripslashes(trim($string));
  14.  $string = preg_replace(&#092;"#(.*?)#si\", \"<strong>1</strong>\", $string);
  15.  $string = preg_replace(&#092;"#(.*?)#si\", \"<em>1</em>\", $string);
  16.  // ciach ---------
  17.  $string = nl2br($string);
  18.  $string = preg_replace_callback(&#092;"/
    1. (.*?)
    /si\", create_function('$func', 'return htmlString($base,$func[1]);'), $string);
  19.  return $string;
  20. }
  21.  
  22. ?>


Mój problem leży w linii 18, a mianowicie:
Do funkcji activeString() podaję tablicę $base.
Chciałbym podać 'dalej' tą tablicę do funkcji htmlString(). Problem jednak w tym, że nie potrafię tego zrobić. Funkcja za każdym podaje string zamiast tablicy. Może jest sposób na obejście tego?

Chciałbym dodać, ze całość działa dobrze - nie przekazuje jedynie tablicy do kolejnej funkcji - tak więc ni trzeba śledzić całości kodu, a jedynie ten fragment:

  1. <?php
  2.  
  3. create_function('$func', 'return htmlString($base,$func[1]);')
  4.  
  5. ?>
Go to the top of the page
+Quote Post
FiDO
post 22.06.2005, 18:14:05
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


tak na szybko, bo wlasnie wychodze...

  1. <?php
  2.  
  3.   &#092;"/
    1. (.*?)
    /si\", 
  4.   create_function(
  5.     '$func', 
  6.     'return htmlString('. var_export($base, true) .',$func[1]);'), 
  7.   $string);
  8.  
  9. ?>


Nie mam specjalnie czasu sprawdzic.. mam jeszcze inny pomysl, ale teraz juz nie zdaze, napisze pozniej jak bedzie trzeba.


--------------------
Brak czasu :/
Go to the top of the page
+Quote Post
id4
post 23.06.2005, 07:43:38
Post #3





Grupa: Zarejestrowani
Postów: 223
Pomógł: 1
Dołączył: --
Skąd: Rogożnik /K-ce/

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


Człowiek całe życie się uczy ...
I całe życie uświadamia sobie, jaki jest malutki ...

Wielkie dzięki - strzał w dziesiątkę ...
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 Wersja Lo-Fi Aktualny czas: 15.07.2025 - 08:31