X
ďťż

[PHP] Wyciąganie określonego tekstu z zmiennej

       

Podstrony


telcocafe

Jak wyciągnąć tekst {dodaj:index.php:} z np. takiego tekstu?
jakiś tam tekst{dodaj:index.php;}jakiś tam tekst
Funkcja substr() odpada, ponieważ {dodaj:index.php:} może być umieszczone w dowolnym miejscu w tekście.
Chcę by to
jakiś tam tekst{dodaj:index.php;}jakiś tam tekst
zostało przeworzone na to:
jakiś tam tekst<? include("index.php") ?>jakiś tam tekst

zamiast index.php może być dowolny inny plik.

Proszę o pomoc.
Użytkownik Capitan V edytował ten post 31 grudzień 2006, 15:07


str_replace?

ale jak zamienić tekst {dodaj:[index.php]}? - zamiast [index.php] może być cokolwiek.

Po prostu raz zamieniasz {dodaj: na <?php include(", a drugi raz } na "); ?>...

//Oczywiście bez porządnego sprawdzania się nie obejdzie. Jako alternatywa -> eregi_replace()/preg_replace() bodaj :)
Użytkownik pbnan edytował ten post 31 grudzień 2006, 18:58


Ale to nie zadziała jeśli tak przerobianą zmienną wyświetlę.

Coś takiego:
if ($tekst==cośtam{dodaj:jakiśplik.php;}jakiśtekst)
{
echo("cośtam");
include ("jakiśplik.php");
echo("jakiśtekst");
}

a nie lepiej poprostu wyciagnac tane z tych klamr i zapakowac do tablicy?

np tak
<?php $str = "jakiś tam tekst{dodaj:index.php;}jakiś tam tekst"; preg_match_all("#{(.*?):(.*?);}#s",$str,$strx); //$strx[1][0] - wyswietli "dodaj" //$strx[2][0] - wyświetli "index.php" echo $strx[1][0]." w ".$strx[2][0]; ?>

O to chodzi - sprawdzę i zedytuję post :thumbsup:

//EDIT
Działa, ale jak zmienna zawiera nowe wiersze to co zrobić?
Użytkownik Capitan V edytował ten post 01 styczeń 2007, 20:36
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.