- ob_get_clean: documentation ( source)
- ob_start: documentation ( source)
- preg_match_all: documentation ( source)
- str_replace: documentation ( source)
<?php
$content = '
Lorem Ipsum is simply dummy text of the printing and typesetting industry.
Lorem Ipsum has been the industrys standard dummy text ever since the 1500s.
[include=contact_form] // here should be contact_form.php included
Lorem Ipsum is simply dummy text of the printing and typesetting industry.
Lorem Ipsum has been the industrys standard dummy text ever since the 1500s
[include=cat] // here should be cat.php included
';
// match
if (preg_match_all('#\[include=(?P<name>.*?)\]#', $content, $includes)) {
// loop
foreach($includes['name'] as $include) {
// buffer
ob_start();
//include($include.'.php'); // 😲
echo 'I was from '.$include.'.php';
$buffer = ob_get_clean();
// replace
$content = str_replace('[include='.$include.']', $buffer, $content);
}
}
echo $content;