Я не уверен, что это правильное название для использования ...
Вот мой вопрос.
Я сохранил имена полей таблицы из базы данных в массиве и создал строку, подобную следующей
foreach ($fields as $field) {
$str.="<td>{$data[key][field]}</td>";
}
И я сохранил данные из таблицы в другом массиве, который имеет вид
$data=array(array('name'=>"name 1",'address'=>"Address One"),array('name'=>"Name 2",'address'=>"Address two"),array('name'=>"Name 3",'address'=>"address three"),array('name'=>"test",'address'=>"test one"));
Теперь я сделал следующее
eval("\$str = \"$str\";");
foreach ($data as $key => $souceStr) {
?>
<tr>
<?=$str?>
</tr>
<?
}
?>
Моя цель - заменить строку, созданную мной из первого массива, значениями из второго массива. Я видел кодирование в CMS, такое как joomla, где они заменяют '{somename}' значением, которое я хочу сделать здесь.
=============================================== ==
Извините, Мой вопрос не был ясен. Но я получил то, что искал. Вот код
<table width="100%" cellpadding="0" cellspacing="0" align="center" border="1">
<tr>
<?
foreach ($header as $val) {
?>
<th><?= $val ?></th>
<?
}
?>
</tr>
<?
foreach ($fields as $field) {
$str.='<td>$souceStr['.$field.']</td>';
}
foreach ($data as $key => $souceStr) {
eval("\$eval_str = \"$str\";");
?>
<tr>
<?php echo $eval_str; ?>
</tr>
<?
}
?>
Идея состояла в том, чтобы напечатать HTML-таблицу.