我不确定是否可以使用preg_replace来完成,但这是我到目前为止所做的
$string='
<div class="row">
<section> [1] </section>
<section> [2] </section>
<section> [5] </section>
</div>';
function searchArray($myarray, $id) {
foreach ($myarray as $item) {
if ($item[$id] == $id)
return $item['name'];
}
return false;
}
所以我需要在preg_replace中运行$ string,其中[]之间的每个var都对应于存储在多维数组中的实际id。这是函数searchArray()的用武之地。基本上运行字符串,将[]替换为实际的id和字段的打印名称。当我一次性提交表格时,所有这一切都需要发生。
答案 0 :(得分:1)
像这样的东西如何替代* preg_replace * ...
$arr = array('apple', 'pear', 'bananna', 'orange', 'grapefruit', 'pineapple');
$string='
<div class="row">
<section> [1] </section>
<section> [2] </section>
<section> [5] </section>
</div>';
foreach($arr as $key => $value){
$string = str_replace($key, $value, $string);
}
<强>更新强>
$arr = array(
array('id'=>1, 'name'=>'matthew'),
array('id'=>2, 'name'=>'william'),
array('id'=>3, 'name'=>'john'),
array('id'=>4, 'name'=>'george'),
array('id'=>5, 'name'=>'henry'),
array('id'=>6, 'name'=>'jason')
);
$string='
<div class="row">
<section> [1] </section>
<section> [2] </section>
<section> [4] </section>
<section> [1] </section>
</div>';
foreach($arr as $key => $subArr){
$string = str_replace("[".$subArr['id']."]", $subArr['name'], $string);
}