0

これは、配列の最初のレコードのみをカバーします- $form[items][0][description]
どうすればこれを繰り返して、後続のものをエコーできるようになりますか?

$form[items][1][description];
$form[items][2][description];
$form[items][3][description];

などなど?

$array = $form[items][0][description];

function get_line($array, $line) {
  preg_match('/' . preg_quote($line) . ': ([^\n]+)/', $array['#value'], $match);
  return $match[1];
}

$anchortext = get_line($array, 'Anchor Text');
$url = get_line($array, 'URL');

echo '<a href="' . $url . '">' . $anchortext . '</a>';

?>
4

2 に答える 2

2

これはトリックを行う必要があります

foreach ($form['items'] as $item) {
  echo $item['description'] . "<br>";
}

あなたの機能の本体を見ればもっとあなたを助けることができますget_lineが、ここにその要点があります

foreach ($form['items'] as $item) {
  $anchor_text = get_line($item['description'], 'Anchor Text');
  $url = get_line($item['description'], 'URL');
  echo "<a href=\"{$url}\">{$anchor_text}</a>";
}
于 2012-12-29T07:05:11.240 に答える
0

for ループを使用して、この配列を反復処理できます。

for($i=0; $i< count($form['items']); $i++)
{
    $anchortext = get_line($form['items'][$i]['description'], 'Anchor Text');
    $url = get_line($form['items'][$i]['description'], 'URL');
    echo '<a href="' . $url . '">' . $anchortext . '</a>';
}
于 2012-12-29T07:07:41.417 に答える