Масив не работает полноценно

barabula

Гуру форума
Регистрация
21 Май 2009
Сообщения
474
Реакции
80
Кто поможет, вот решил пхп попрактиковать, но появилась пробелма с масивом.
Вот что я накодил:
PHP:
$towns = array( 
"Russia" => array ("Moskov", "Sanct-Peterburg", " Perm"),
"Ukraine" => array("Kyiv", "Lviv", "Odessa"),
"USA" => array ("Washington","Los-Angeles","New-York")
);
foreach($towns as $key => $val)
{
echo "<br><h1>".$key."</h1>";	
}
foreach ($val as $city)
{
echo "<br>$city";	
}
Вот что выводит в браузере:
Russia
Ukraine
USA
Washington
Los-Angeles
New-York
Вопрос: Почему выводятся толкьо города USA а не все города? и как это исправить на правильный код? буду весьма благодарен.
 
нужно так
PHP:
$towns = array( 
"Russia" => array ("Moskov", "Sanct-Peterburg", " Perm"),
"Ukraine" => array("Kyiv", "Lviv", "Odessa"),
"USA" => array ("Washington","Los-Angeles","New-York")
);
foreach($towns as $key => $val)
{
echo "<br><h1>".$key."</h1>";	
 foreach ($val as $city)
 {
 echo "<br>$city";	
 }
}
 
нужно так
PHP:
$towns = array( 
"Russia" => array ("Moskov", "Sanct-Peterburg", " Perm"),
"Ukraine" => array("Kyiv", "Lviv", "Odessa"),
"USA" => array ("Washington","Los-Angeles","New-York")
);
foreach($towns as $key => $val)
{
echo "<br><h1>".$key."</h1>";	
 foreach ($val as $city)
 {
 echo "<br>$city";	
 }
}

Спасибо большое, теперь буду знать)))
Может сможете подсказать ещё в паре моментов если не затруднит ?

При помощи Цыкла while нужно вывести все числа в промежутке от 0 до 10, которые делятся на 3 без остатка.


И ещё не могу понять как можно с помощью цыкла for вывести числа от 0 до 10 НЕ используя тела цыкла?
 
При помощи Цыкла while нужно вывести все числа в промежутке от 0 до 10, которые делятся на 3 без остатка.
И ещё не могу понять как можно с помощью цыкла for вывести числа от 0 до 10 НЕ используя тела цыкла?
в школах начали учить php вместо русского языка? :D
1: числа от 0 до 10 которые делятся на 3 без остатка
PHP:
<?php
$i = 0;
while($i<=10)
{
	if($i%3==0 && $i!=0)
		echo $i."\r\n";
	$i++;
}
2: вывод чисел от 0 до 10 без использования условия в теле цикла
PHP:
<?php
for($i=0;$i<=10;$i++)
{
	echo $i."\r\n";
}

и насчет названия темы - массив не может работать, это набор данных.
 
PHP:
$i=0;
while($i<10){
 if(($i%3)==0){
   чего-то там выводим
 }
$i++;
}
Операция % - остаток от деления в помощь
 
2: вывод чисел от 0 до 10 без использования условия в теле цикла
PHP:
<?php
for($i=0;$i<=10;$i++)
{
	echo $i."\r\n";
}
НЕ используя тело цикла?
Тоесть должно быть вот так:
for(........)
{
тут пусто
}
 
научись читать документацию:
PHP:
for ($i=0; $i<=10; print "$i", $i++)
{
}

Касательно не правильно названой темы, это тоже простительно т.к. я новичок и ещё не всё понимаю, но тем не менее эта ветка называется PHP для начинающих, а по сему тут будут не совсем грамотные ворпосы, и если у тебя не хватает терпения и силы воли быть снесходительным к таким людям, то лучше вообще не посещай данную ветку.
 
PHP:
$i=0;
while($i<10){
 if(($i%3)==0){
   чего-то там выводим
 }
$i++;
}
Операция % - остаток от деления в помощь

Зачем делать полный перебор, если нужны только числа, кратные 3-м? Почему бы не сделать так:
PHP:
for($i = 0; $i < 10; $i += 3)
{
   чего-то там выводим
}
 
Назад
Сверху