Два цикла foreach в PHP - PullRequest
       3

Два цикла foreach в PHP

0 голосов
/ 23 декабря 2010

Мой код представляет собой простой скрипт ссылок. Мне нужны две петли foreach, одна из которых зацикливает мои сайты, а другая зацикливает мои якоря. Так что у меня будет

<li>link to site1 and anchor to site1</li>
<li>link to site2 and anchor to site2</li>
<li>link to site3 and anchor to site3</li>

$currentsite = ''.bloginfo('wpurl').'';
$mysites = array('http://site1.com', 'http://site2.com', 'http://site3.com');
$myanchors = array('anchor1','anchor2','anchor3');
foreach($mysites as $mysite) ****** I need a foreach loop for the anchors array *******
{
    if ( $mysite !== $currentsite ){
        echo '<li><a href="'.$mysite.'" title="'.$myanchor.'">'.$myanchor.'</a></li>';
    }
}

Как?

Ответы [ 3 ]

2 голосов
/ 23 декабря 2010

Полагаю, вы пытаетесь записать ссылки с якорями. Просто используйте один массив, подобный этому:

1 голос
/ 23 декабря 2010
// Assuming that $mysites and
// $myanchors have same sizes.
for ( $i = 0; $i < length($mysites); ++$i )
{
  $mysite = $mysites[ $i ];
  $myanchor = $myanchors[ $i ];
  // ...
}
0 голосов
/ 23 декабря 2010

Я бы рекомендовал использовать ассоциативный массив с якорями в качестве ключей для сайтов.

Тогда вы можете перебрать этот массив и отобразить значения. В вашем примере $ myanchor никогда не устанавливается.

$mysites = array(
        'anchor1' => 'http://site1.com', 
        'anchor2' => 'http://site2.com', 
        'anchor3' => 'http://site3.com');

    foreach ($mysites as $anchor => $site) { //****** i need a foreach loop for the anchors array *******
        if ($site !== $currentsite) {
            echo '<li><a href="' . $site . '" title="' . $anchor . '">' . $anchor . '</a></li>';
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...