[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: простой цикл
maximka787
Ребята, я понимаю что вопрос для школы, но мне надоело расписывать массивы.
Объясните пожалуйста один раз, как реализовать самый простейший механизм?
$var1 = 1;
$var2 = 2;
$var3 = 3;
//...
$var100 = 100;

for($i=1; $i<100; $i++){
echo $var['$i'];
// echo $var[$i];
// echo $var.$i;

}

Мне надо вывести значения всех переменных. Вопрос больше по теории.



Спустя 2 минуты, 57 секунд (20.11.2010 - 13:50) inpost написал(а):
А чем тебе массив не подходит? Тут надо использовать массив, а тебе просто лень...

Спустя 1 минута, 8 секунд (20.11.2010 - 13:51) maximka787 написал(а):
Мне не лень, ты хочешь сказать, что сначала данные надо загнать в массив? я думал может еще какой способ есть

Спустя 1 минута, 24 секунды (20.11.2010 - 13:53) maximka787 написал(а):
Цитата (DySprozin @ 20.11.2010 - 10:51)
хм... так?

это точно не то)

Спустя 6 минут, 49 секунд (20.11.2010 - 14:00) maximka787 написал(а):
$var1 = 1;
$var2 = 2;
$var3 = 3;

for ($i=1; $i<3; $i++){
$M[$i] = $K['var'.$i];
echo $M[$i];
}

хотя и массив почему то не работает

не спал ночь, совсем не соображаю, помогите кто может) работу надо сегодня сдать

Спустя 2 минуты, 58 секунд (20.11.2010 - 14:03) DySprozin написал(а):
maximka787
так и не понял, в чем смысл (; не хочешь юзать массивы (почему?) - используй способ, который я дал выше [поправка: выше было написано по обкурке, потому удалил]. Или загоняй все в массив (; четко вопрос сформулируй (;

Спустя 46 секунд (20.11.2010 - 14:03) maximka787 написал(а):
аа, все понял)

Спустя 1 минута, 37 секунд (20.11.2010 - 14:05) inpost написал(а):
$var[1] = 1;
$var[2] = 2;
$var[] = 3;
$var[] = 4;
foreach ($var as $v)
{
echo $v."<br>";
}

Спустя 6 минут, 6 секунд (20.11.2010 - 14:11) maximka787 написал(а):
А если у меня данные выходят через ПОСТ в мой скрипт в виде
$var1
$var2
как их проще в массив запихать?
чтобы получилось
$mass[1] = $var1;
$mass[2] = $var2; но только не писать вручную а циклом тк у меня там диаграмма и значений около 100 вылетает от var1 до var100

Спустя 1 минута, 35 секунд (20.11.2010 - 14:13) maximka787 написал(а):
for ($i=1; $i<100; $i++){
$mass[$i] = $var.$i;
}

так не работает, но нужно что-то похожее. просто у меня ошибка в грамматике где-то

Спустя 8 минут, 35 секунд (20.11.2010 - 14:21) aH6y написал(а):
maximka787
for ($i = 0; $i < 100; $i++){
$mass[] = $var.$i;
}

print_r ($mass); // покажет все элементы массива

Спустя 12 секунд (20.11.2010 - 14:21) maximka787 написал(а):
я только вижу возможность сделать это таким способом
$mass = array($var1,$var2...$var100);

ну это же не совсем наверно то, это вручную все надо дабвалять

Спустя 2 минуты, 3 секунды (20.11.2010 - 14:23) maximka787 написал(а):
aH6y Точно, это уже то что нужно.

Спустя 2 минуты, 32 секунды (20.11.2010 - 14:26) aH6y написал(а):
maximka787
Либо так:
foreach (range(0, 99) as $number) {
$mass[] = $number;
}

Только в массиве идёт индексация с 0.

Спустя 2 минуты, 16 секунд (20.11.2010 - 14:28) linker написал(а):
Если через POST, то и используй $_POST как массив, че мучаешься.

Спустя 9 секунд (20.11.2010 - 14:28) Nikitian написал(а):
Цитата (maximka787 @ 20.11.2010 - 11:11)
А если у меня данные выходят через ПОСТ в мой скрипт в виде
$var1
$var2
как их проще в массив запихать?
чтобы получилось
$mass[1] = $var1;
$mass[2] = $var2; но только не писать вручную а циклом тк у меня там диаграмма и значений около 100 вылетает от var1 до var100


$mass=array();
for($i=1;$i++;$i<=2){
$mass[$i]=$_POST['var'.$i];
}

Спустя 1 минута, 53 секунды (20.11.2010 - 14:30) linker написал(а):
for($i=1;$i++;$i<=2) - оригинально.
foreach($_POST as $Key => $Value)
{
}

Спустя 3 минуты, 10 секунд (20.11.2010 - 14:33) Nikitian написал(а):
Цитата (linker @ 20.11.2010 - 11:30)
for($i=1;$i++;$i<=2) - оригинально.
foreach($_POST as $Key => $Value)
{
}

Сделано в точности по тз, где был указан диапазон в 1,2. Думается, разберётся как расширить.
Форич не айс тем, что у переменных в посте есть имена и они не все могут быть var{x}, т.е. придётся делать поиск по подстроке для выборки только var{x}

ТС, вобще лучше бы вы передавали данные в посте сразу массивом и не сношали мозг такими алгоритмами.

Спустя 40 минут, 1 секунда (20.11.2010 - 15:13) DySprozin написал(а):
вот, лови:

<?
$var1 = 3;
$var2 = 4;
$var3 = 1;

for($i=1; $i<3; $i++){
eval("echo \$var$i;");
}
?>

Спустя 6 часов, 48 минут, 25 секунд (20.11.2010 - 22:02) linker написал(а):
Nikitian
$i=1;$i++;$i<=2 - а ты местами параметры не перепутал?

Спустя 6 часов, 25 минут, 6 секунд (21.11.2010 - 04:27) Nikitian написал(а):
linker
Всё может быть. Человеку дан мозг, чтобы думать и если где ошибка догадается ТС, то это ему только в плюс wink.gif Ошибка не портит логику решения, которое ему необходимо.

Спустя 9 часов, 30 минут, 17 секунд (21.11.2010 - 13:57) Dark Rise написал(а):
Тебе что лень писать?
В массивы надо загонять!!!
huh.gif


_____________
..Работает - не трогай!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.