Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.02.2011, 13:05   #1
KLAXON
Пользователь
 
Регистрация: 17.06.2010
Сообщений: 50
По умолчанию ошибка синтаксиса foreach

господа! обращаюсь за помощью.
при обходе многомерного массива дримвьювер подсвечивает ошибку в строке начала цикла. где проблема?

PHP код:
$arrayDistrict = array (
                        
"Белгородская область:" => array ("Белгород""Валуйки""Старый Оскол"),
                        
"Воронежская область:" => array ("Воронеж""Лиски"),
                        
"Курская область:" => array ("Курск""Ржава""Железногорск")
                        )


foreach (
$arrayDistrict as $aDistrict => $aCity)
{
    echo(
"<h2>$aDistrict</h2>" "<ul>");

    foreach (
$aCity as $sCity)
    {
        echo(
"<li>$sCity</li>");
    }
        echo(
"</ul>");

заранее спасибо!
KLAXON вне форума Ответить с цитированием
Старый 04.02.2011, 13:11   #2
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

У Вас все в порядке. Скобки - закрыты, кавычки - тоже. Запятые - есть.

А на дримвьювера это - да - похоже.
Если уж он Вам так нравится, то прийдется пользоваться приблудами типа этой. )
SkyM@n вне форума Ответить с цитированием
Старый 04.02.2011, 13:14   #3
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Цитата:
Сообщение от KLAXON Посмотреть сообщение
где проблема?
Вроде нет ; после инициализации массива $arrayDistrict ...
Andkorol вне форума Ответить с цитированием
Старый 04.02.2011, 13:16   #4
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

О, таки да. Моя ошибка. За внимательность - респект
SkyM@n вне форума Ответить с цитированием
Старый 04.02.2011, 13:18   #5
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Цитата:
Сообщение от SkyM@n Посмотреть сообщение
О, таки да. Моя ошибка. За внимательность - респект
Не только ваша ошибка - программа по ссылке тоже не нашла...
Andkorol вне форума Ответить с цитированием
Старый 04.02.2011, 13:21   #6
KLAXON
Пользователь
 
Регистрация: 17.06.2010
Сообщений: 50
По умолчанию

Цитата:
Сообщение от SkyM@n Посмотреть сообщение
У Вас все в порядке. Скобки - закрыты, кавычки - тоже. Запятые - есть.

А на дримвьювера это - да - похоже.
Если уж он Вам так нравится, то прийдется пользоваться приблудами типа этой. )
благодарю за линк, удобная штука, а локальных дебаггеров таких нет? открываешь прогу, вставляешь код, и, вуаля. - ответ на вопрос, где не хватает точки с запятой раскрыт!)

Цитата:
Сообщение от Andkorol Посмотреть сообщение
Вроде нет ; после инициализации массива $arrayDistrict ...
все верно, благодарю. синтаксис инициализации массивов необходимо повторить. в склерозник пометил!)

все заработало. подсветка изчезла, браузер отображает все ок.
нужно делать так:

PHP код:
$arrayDistrict = array (
                        
"Белгородская область:" => array ("Белгород""Валуйки""Старый Оскол"),
                        
"Воронежская область:" => array ("Воронеж""Лиски"),
                        
"Курская область:" => array ("Курск""Ржава""Железногорск")
                        );


foreach (
$arrayDistrict as $aDistrict => $aCity)
{
    echo(
"<h2>$aDistrict</h2>" "<ul>");

    foreach (
$aCity as $sCity)
    {
        echo(
"<li>$sCity</li>");
    }
        echo(
"</ul>");

KLAXON вне форума Ответить с цитированием
Старый 04.02.2011, 13:23   #7
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

Цитата:
Сообщение от Andkorol Посмотреть сообщение
Не только ваша ошибка - программа по ссылке тоже не нашла...
Кстати да, фтопку.
SkyM@n вне форума Ответить с цитированием
Старый 04.02.2011, 13:26   #8
VadikV
Форумчанин
 
Аватар для VadikV
 
Регистрация: 08.01.2011
Сообщений: 226
По умолчанию

Цитата:
Сообщение от KLAXON Посмотреть сообщение
благодарю за линк, удобная штука, а локальных дебаггеров таких нет? открываешь прогу, вставляешь код, и, вуаля.
Попробуй вот эту вещь NuSphere PhpED. Отличная штука.
icq 223-630-454
e-mail vysotskiy@list.ru
сайт http://www.big-library.net/
VadikV вне форума Ответить с цитированием
Старый 04.02.2011, 13:33   #9
KLAXON
Пользователь
 
Регистрация: 17.06.2010
Сообщений: 50
По умолчанию

Цитата:
Сообщение от VadikV Посмотреть сообщение
Попробуй вот эту вещь NuSphere PhpED. Отличная штука.
спасибо, качаю.
KLAXON вне форума Ответить с цитированием
Старый 04.02.2011, 18:07   #10
KLAXON
Пользователь
 
Регистрация: 17.06.2010
Сообщений: 50
По умолчанию

есть еще вопрос по вышеобъявленному массиву.
задача: вывести все города на букву "к", если город начинается на другую букву - не выводить.

обход массивов строю вот таким образом:

PHP код:
foreach ($arrayDistrict as $aDistrict => $aCity)                    
{    
    echo(
"<h2>$aDistrict</h2>");                            
    
    foreach (
$aCity as $sCity)                            
    {
        
$kCity[] = str_split($sCity);        
        if (
$kCity[0] == ("К" || "к"))
        {
            echo (
"$sCity;<br>");
        }
    }

и читаю скрипт так:
1) в каждой записи массива $arrayDistrict рассмотрим вложенный массив $aDistrict, содержащий еще один массив $aCity.
2) выведем на экран $aDistrict заголовком.
3) каждую запись массива $aCity разобъем на буквы и запишем в массив $kCity[].
4) если нулевой параметр нового массива $kCity[] - это буква "к", то выводим запись из массива $sCity.
_____________

вижу, что скрипт недоработан на этапе вывода $sCity, но сходу не могу сориентироваться.

скрипт выводит все города без исключения, в т.ч. и те, которые не начинаются на "к".

вопроса 2:

1. правильно ли я читаю скрипт?
2. не хватает цикла перебора индексов $sCity?

Последний раз редактировалось KLAXON; 04.02.2011 в 18:08. Причина: add
KLAXON вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка синтаксиса в Acceess Droid БД в Delphi 3 06.06.2012 10:32
Ошибка синтаксиса Santosh Microsoft Office Access 2 18.08.2010 00:15
Ошибка синтаксиса в предложении FROM general_krasnov БД в Delphi 7 04.06.2010 17:39
Помогите с запросом SQL. Ошибка синтаксиса в выражении запроса. ZiG24RUS Microsoft Office Access 1 19.05.2009 06:29
EOleException 'Ошибка синтаксиса в предложении FROM' XATAB БД в Delphi 5 24.11.2008 05:43