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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.07.2009, 03:43   #1
TDrive
Пользователь
 
Регистрация: 22.07.2009
Сообщений: 95
По умолчанию php goto

в php какая команда аналог команды goto как в других языках? чё то нигде не могу найти(
TDrive вне форума Ответить с цитированием
Старый 27.07.2009, 03:46   #2
TDrive
Пользователь
 
Регистрация: 22.07.2009
Сообщений: 95
По умолчанию

или как можно прервать выполнение php скрипта?
TDrive вне форума Ответить с цитированием
Старый 27.07.2009, 08:43   #3
psycho-coder
Участник клуба
 
Аватар для psycho-coder
 
Регистрация: 06.04.2009
Сообщений: 1,524
По умолчанию

Выход из функции return;, а прервать скрипт (т.е. весь файл с скриптом) кажется exit; Точно не помню
goto никогда не используй! Старайся использовать условные переходы!
psycho-coder вне форума Ответить с цитированием
Старый 27.07.2009, 09:09   #4
TDrive
Пользователь
 
Регистрация: 22.07.2009
Сообщений: 95
По умолчанию

Цитата:
Сообщение от psycho-coder Посмотреть сообщение
Выход из функции return;, а прервать скрипт (т.е. весь файл с скриптом) кажется exit; Точно не помню
goto никогда не используй! Старайся использовать условные переходы!
да точно exit спасибо.

а почему goto не использовать? что в ней такого страшного?
TDrive вне форума Ответить с цитированием
Старый 27.07.2009, 10:53   #5
Metandrostenalon
Форумчанин
 
Регистрация: 03.04.2009
Сообщений: 108
По умолчанию

в php 5.3 ввели уже

http://www.php.net/manual/en/control...tures.goto.php
php,javascript

Последний раз редактировалось Metandrostenalon; 27.07.2009 в 10:56.
Metandrostenalon вне форума Ответить с цитированием
Старый 27.07.2009, 11:29   #6
mv28jam
Старожил
 
Аватар для mv28jam
 
Регистрация: 09.09.2008
Сообщений: 2,624
По умолчанию

Цитата:
а почему goto не использовать?
Зачем Вам оператор линейного программирования?
Цитата:
в php 5.3 ввели уже
This is not a full unrestricted goto.
Стрелок-охотник
mv28jam вне форума Ответить с цитированием
Старый 27.07.2009, 13:48   #7
psycho-coder
Участник клуба
 
Аватар для psycho-coder
 
Регистрация: 06.04.2009
Сообщений: 1,524
По умолчанию

Цитата:
Сообщение от TDrive Посмотреть сообщение
а почему goto не использовать? что в ней такого страшного?
Потому что это безусловный переход, нарушает целостность данных.

Вот правильно сказали
Цитата:
Зачем Вам оператор линейного программирования?
psycho-coder вне форума Ответить с цитированием
Старый 27.07.2009, 19:23   #8
TDrive
Пользователь
 
Регистрация: 22.07.2009
Сообщений: 95
По умолчанию

я не знаю какие там данные он нарушает но для меня goto это удобный оператор который быстро выполняется и в некоторых случаях способен упростить алгоритм программы.
не зря же в процессор встроили команду перехода на адрес? так почему бы не пользоваться? тем более если так можно сделать программу быстрее.
И какая разница что она там нарушает\ненарушает, линейная\нелинейная...
при программировании надо думать о скорости выполнения программы а не о том как красивее оформить исходник.
TDrive вне форума Ответить с цитированием
Старый 27.07.2009, 20:16   #9
psycho-coder
Участник клуба
 
Аватар для psycho-coder
 
Регистрация: 06.04.2009
Сообщений: 1,524
По умолчанию

Цитата:
Сообщение от TDrive Посмотреть сообщение
я не знаю какие там данные он нарушает но для меня goto это удобный оператор который быстро выполняется и в некоторых случаях способен упростить алгоритм программы.
Проще не значит лучше(ИМХО)
Цитата:
не зря же в процессор встроили команду перехода на адрес? так почему бы не пользоваться? тем более если так можно сделать программу быстрее.
Это Вы наверное про ассемблерные команды jz, jnz, jmp и т.д.?
Да есть такие, НО неправильное использование приводит к ужасным последствиям, и тяжело отлаживается. И в асме переходы производятся по адресам, а в goto (насколько мне известно) можно вылететь за доступные пределы и возбудить исключение.

Цитата:
И какая разница что она там нарушает\ненарушает, линейная\нелинейная...
при программировании надо думать о скорости выполнения программы а не о том как красивее оформить исходник.
Есть такое интересное понятие как "Стиль программирования", который у каждого языка свой. стили для С и С++ различны, т.к. в последнем есть классы со всеми вытекающими.
В php есть свой стиль.
Быстрота программы не ключ к успеху. Правильно составленный алгоритм на VB будет работать быстрей чем любителем (тот же алгоритм), на асме.
Еще есть какая то штука в ОС (как называется, не помню хоть убей), где безусловные переходы приводят к краху системы, не смотря на то, что это быстрей.
И еще, попробуйте передать управление программы с помощью goto в тело цикла и посмотрите что будет. Она либо будет работать (криво конечно, но будет), либо вообще вылетит!
psycho-coder вне форума Ответить с цитированием
Старый 27.07.2009, 20:47   #10
TDrive
Пользователь
 
Регистрация: 22.07.2009
Сообщений: 95
По умолчанию

всё сводится к правильному использованию goto.
да где то она ненужна, а где то открывает дополнительные возможности.
по этому goto не стоит забывать.
TDrive вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
goto bye; Ошибка при компиляции в MVS2008 TheWanderer Общие вопросы C/C++ 4 14.06.2010 18:10
php 3,0,5 Форсировка PHP 8 20.06.2009 22:59
кавычки у PHP Lilith PHP 1 27.06.2008 23:38
Установка php ERASERROR Софт 5 03.02.2008 15:42