mam zmienną x przechowujacą szablon strony (lub tekst). Nie wiem jak się zabrać do tego, aby PHP z całej zmiennej wyszukał wszystkie wyrazy zaczynające się od {$const.nazwa_stalej}, i wyświetlił nazwę stałej.
Przykład:
‘Lorem ipsum dolor sit amet, consectetur adipiscing elit. {$const.stala1} Donec hendrerit magna non mauris blandit fringilla. {$const.stala2} Vestibulum ac tempor dui. Vivamus.’
Wyszuka 2 stałe: const1, const2 i zamieni je z wartością stałej.
Próbowałem z str_replace, explode, ale nie mam już pomysłu jak to zrobić
Wyrażenia regularne i funkcja preg_match, preg_match_all. Zachęcam do lektury. Zagadnienie nie jest łatwe ale przy pomocy wyrażeń zrobisz to bardzo prosto.
<?php
define('test', 'test');
$str = 'Moja testowa stala {$const.test}.';
$pattern = '/{\$const.(.*?)}/';
$replace = '\1'; // wyswietla w tym miejscu test, czyli dziala jak nalezy
echo preg_replace($pattern, $replace, $str);
?>