php loop оператор вопрос - PullRequest
       7

php loop оператор вопрос

1 голос
/ 23 марта 2011

Мне интересно, возможно ли зациклить переменную внутри переменной? Вот что я хочу настроить:

$var1 = Benjamin
$var2 = George
$var3 = Abraham

и, вероятно, эхом что-то вроде

<li>Benjamin</li>
<li>George</li>
<li>Abraham</li>

но Я хочу знать, если я хочу добавить $var4 = ..., $var5 = ..., есть ли способ сделать все это в цикле? Я имею в виду наличие функции empty(), которая будет зацикливать имена / числа переменных, пока не достигнет первой пустой переменной?

Ответы [ 6 ]

7 голосов
/ 23 марта 2011

Вы можете хранить их в массиве .

$names = array('Mike', 'Jim', 'Tom', 'Stacy');

foreach($names as $name){
  echo $name;
}

Как видно здесь: http://www.ideone.com/f7Ce7

6 голосов
/ 23 марта 2011

В PHP вы можете сделать это:

    $var1 = "foo";
    $var2 = "bar";

    $name = "var1";
    $i=1;
    while( !is_null( $$name ) ) {
            echo '<li>' . $$name . '</li>';
            $i++;
            $name = "var$i";
    }

, но лучшим решением может быть использование массива и foreach

2 голосов
/ 23 марта 2011
$var=array('Benjamin', 'George', 'Abraham');

foreach ($var as $name){
echo $name;
}
2 голосов
/ 23 марта 2011

Звучит так, как будто вы хотите использовать массивы и foreach.Я что-то упустил?

$presidents = array(
  'Benjamin', 'George', 'Abraham'
);

foreach($presidents as $pres) {
 echo "$pres\n";
}
0 голосов
/ 23 марта 2011

Это решение не требует использования массива.

$var1 = 'Benjamin';
$var2 = 'George';
$var3 = 'Abraham';
//add as many variables as you want

$i = 0;
$currentVariable = 'var'.$i;
while (isset($$currentVariable)) {
    //process variable
    echo $$currentVariable;
    $i++;
}
0 голосов
/ 23 марта 2011

Лучшим решением были бы массивы. определить это как: $names = array(0=>"Benjamin",1=>"George",2=>"Abraham");

Затем выполните цикл:

foreach ($names as $id=>$name)
{
    echo $name;
}

Затем укажите имя с $names[0], если вы хотите добавить другое использование $names[] = 'William'; Посмотрите дополнительную информацию на: http://php.net/manual/en/language.types.array.php

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...