Ben fonksiyonları içeren bir dize olarak bir PHP + HTML kodu var. Ben bazı fonksiyon yer alan içerik ile değiştirilmesi çağrıları istiyorum. Birine çok sayıda dosya koydu.
Short example - Before
<html>
<?php myclass->my_function('one', 'two', 'three'); ?>
<h1>Content in between</h1>
<?php myclass->my_function('1', '2'); ?>
</html>
Short example - Replacing content
<html>
<?php run('one', 'two', 'three'); /* Run does include a file */ ?>
<h1>Content in between</h1>
<?php run('1', '2'); /* Run does include a file */ ?>
</html>`
Short example - After
<html>
<?php
/* Start my_function */
echo 'This is the result of my_function one two three';
/* End my_function
?>
<h1>Content in between</h1>
<?php
/* Start my_function */
<?php myclass->my_function('four', 'five', 'six'); ?>
/* End my_function
?>
</html>
Bu sınıfım dahil edilen içeriğinde bulunan dikkat edin. Sonuç tekrar ayrıştırılması gerekmektedir.
Short example - After that
Bütün bu tekrar ayrıştırılır ve dahil içeriği ile Sınıfım değiştirilir.
<html>
<?php
/* Start my_function */
echo 'This is the result of my_function one two three';
/* End my_function */
?>
<h1>Content in between</h1>
<?php
/* Start my_function */
echo 'four five six';
/* End my_function */
?>
</html>
Ben patlayabilir ile yapmaya çalıştım ama o karmaşık gitti. Iki adım "içerik değiştirme" ve bir hamlede yapılması gerekebilir "sonra".
Bir dize olarak bakmak. Bunu çözmek preg_replace miyim? Nasıl?