Самоучуся. Понятно, что return возвращает чтото туда, откуда запущено. Если return запущен в функции, то в неё и возвращает, но есть некоторые непонятки. Есть 2 примера: 1) PHP: $name = 'Вася'; if(!$name == 'Васян'){ return false; }else echo'Привет, Васян!<br>'; echo $name; Тут если значение переменной $name не совпадает с 'Васян'(а оно не совпадает), то как результат сравнения должно вернуться false(куда вернуться, мне не очень понятно. Возможно изза этого и вопрос). Условие else не должно обрабатываться. то есть должно вывестись 'Вася'. А выводится "Привет, Васян" и "Вася". Что-то я недопонял. Прошу растолковать по простому - простонародному) 2) if(!is_file(text.php)) return false; Тута false куда возвращается и что вытворяет? Прошу за тупые вопросы - новичок я не самый умный, прошу в меня морковкой не тыкать)
PHP: functiob check_vasya_name($name){ return $name == 'Васян'; } $name_to_check = 'Вся'; if(check_vasya_name($name_to_check)){ print 'Привет Васян'; }else{ print 'Привет '.$name_to_check.', но ты не Васян, пошёл на'; }
мал ещё просить! Пока ты можешь только выбрать, куда именно тебе тыкать. У тебя просто тупой пример, который видимо ты сам выдумал и не можешь понять нахрена он такой странный. Я сейчас тебе буду показывать пример годный, правильный. Касательно вывода текста, обычно придерживаются одной концепции, либо выводят сразу, либо возвращают, и там выводят, откуда вызвали. поэтому твой пример должен выглядеть вот так: PHP: echo hello('Васян'); function hello($name) { if ($name == 'Васян') { return 'Привет, ' . $name . '! Чо как, чувак?!'; } else { return 'Привет, ' . $name. ', давай знакомиться!'; } } ретурн делают тогда, когда надо. Даже в файле можно написать ретурн и иногда так делают, если очень нужно. Я например делаю регулярно.
Но всё же - такой код как должен сработать? Интересует не с точки зрения целесообразности, а для лучшего понимания механизма return. Я не очень понимаю, в каких случая и куда он возвращает. С функцией понятно, но на наиболее простых примерах
Что значит сработать? запусти и посмотри. В итоге ты получишь холостой вызов (return), который ничего не сделает. Как писали выше, есть вариант использовать return как бы вне функции и метода, например запускать будем index.php PHP: $list = include('1.php'); var_dump($list); 1.php PHP: return array('one', 'two');
PHP спроектирован так, что он будет работать, даже если ты будешь писать жопой во сне. Это не аргумент и не цель. =) Но по-началу - да. Делай так, чтобы он хотя бы работал. Это хорошо. Лучше, чем, если не работает.
Всем спасибо! Не буду вас больше беспокоить по return - у. То, что вы мне показали - внесло свою ясность. Чую, что нужно в мануалах поглубже покапаться с этим вопросом.
чувак, ну ты нас не беспокоишь, ты радуешь. Посмотри, у меня почти 28 тысяч сообщений. Я только и ищу повода, чтобы что-то написать.
Оу, спасибо))Буду иметь ввиду и когда совсем глупые вопросы сам закрою, потом что-нить спрошу еще, но в другой теме))Спасибо еще раз!