Я тут человек совсем новый и если разместил свой вопрос не там где надо - не ругайте (может не совсем осмотрелся или не правильно воспользовался поиском)
Обясните мне, пожалуйста, как можно проще - какое принципиальное отличие друг от друга имеют PRINT, PRINTF и ECHO. Поясню причину вопроса: я ещё новичок в PHP, за основу своих познаний выбрал учебный материал Евгения Попова. При создании админки(в рамках урока) надо было вывести форму с умеющимся текстом в БД для его последующего редактирования. Попов вывел её через:
PRINT <<<HERE (тут код формы) HERE;
и у него всё сработало, а у меня нет.
Но тоже самое мне удалось сделать через:
PRINTF и ECHO
и тоже всё работает, как у Евгения Попова.
Но в чём разница я так и не понял.
Спустя 8 минут, 18 секунд (13.04.2011 - 21:48) neadekvat написал(а):
Во-первых, советую сменить учебный материал. Курсы Попова пользуются не самой лучшей славой, мягко говоря.
Во-вторых, вы кое-что смешали.
print и echo - это конструкции языка, которые выводит строку на экран. Все.
printf предназначет для форматированного вывода. Но с этим рекомендую пока не связываться, чтобы не забивать голову. Если же интересно - то в документацию, там дофига примеров (дал на функцию sprintf, но они различаются только тем, что printf выводит строку, а sprintf ее возвращает).
<<<HERE - особый Heredoc-синтаксис синтаксис. Его использовать тоже не рекомендую. Для больших html вставок лучше использовать отдельный шаблон - но к этому тоже придете со временем.
Короче, используйте print или echo для вывода на экран. С опытом поймете, что такое printf.
Во-вторых, вы кое-что смешали.
print и echo - это конструкции языка, которые выводит строку на экран. Все.
printf предназначет для форматированного вывода. Но с этим рекомендую пока не связываться, чтобы не забивать голову. Если же интересно - то в документацию, там дофига примеров (дал на функцию sprintf, но они различаются только тем, что printf выводит строку, а sprintf ее возвращает).
<<<HERE - особый Heredoc-синтаксис синтаксис. Его использовать тоже не рекомендую. Для больших html вставок лучше использовать отдельный шаблон - но к этому тоже придете со временем.
Короче, используйте print или echo для вывода на экран. С опытом поймете, что такое printf.
Спустя 30 минут, 1 секунда (13.04.2011 - 22:18) Alexiss написал(а):
Цитата (neadekvat @ 13.04.2011 - 18:48) |
Во-первых, советую сменить учебный материал. Курсы Попова пользуются не самой лучшей славой, мягко говоря. Во-вторых, вы кое-что смешали. print и echo - это конструкции языка, которые выводит строку на экран. Все. printf предназначет для форматированного вывода. Но с этим рекомендую пока не связываться, чтобы не забивать голову. Если же интересно - то в документацию, там дофига примеров (дал на функцию sprintf, но они различаются только тем, что printf выводит строку, а sprintf ее возвращает). <<<HERE - особый Heredoc-синтаксис синтаксис. Его использовать тоже не рекомендую. Для больших html вставок лучше использовать отдельный шаблон - но к этому тоже придете со временем. Короче, используйте print или echo для вывода на экран. С опытом поймете, что такое printf. |
Ага, спасибо.
Насколько я понял PRINTF применяется для каких-то циклов. Скажем чтобы выводилась одна и таже форма с контекстом при добавлении товара(его описание, дата, цена и т.д.), т.е форма одна и таже, а содержание - цена, описание разные. PRINT или ECHO просто что-то выводят в строке, например "Объявление не добавлено". Или я ошибаюсь? А что можете посоветовать для обучения вместо видо материалов Евгения Попова? И чем его пособия плохи?
Спустя 6 минут, 3 секунды (13.04.2011 - 22:24) neadekvat написал(а):
Цитата (Alexiss @ 13.04.2011 - 23:18) |
Насколько я понял PRINTF применяется для каких-то циклов. |
Неверный вывод.
Циклы или не циклы - это дело второе, и к сути различий отношения не имеют.
printf используется для форматированного вывода переданных аргументов. Т.е., например, у нас есть число 3. А мы хотим, чтобы оно выглядело как 3,00. Удобнее всего это сделать функцией (s)printf.
Цитата (Alexiss @ 13.04.2011 - 23:18) |
А что можете посоветовать для обучения вместо видо материалов Евгения Попова? |
Увы, сложно сказать. Но, например, irbis-team или softtime. Последний, правда, слегка устаревший, но для основ сойдет.
Цитата (Alexiss @ 13.04.2011 - 23:18) |
И чем его пособия плохи? |
Как показывает практика, из 90% его последователей выходят говнокодеры. Причем таких людей сложно переучивать. На этом форуме я встретил только одного человека (с ником inpost), который вышел сухим после курсов Попова. Все остальные провоцировали пустить слезу, смотря на их код.
Плюс, для интереса я посмотрел одно-два видео Попова - не программист, но менеджер. Плюс, видео-курсы - не тот формат, с помощью которого следует изучать программирование.
Спустя 57 минут, 5 секунд (13.04.2011 - 23:21) inpost написал(а):
Alexiss
У меня в подписи последняя ссылка, там я написал ответ о разнице.
Учиться надо по irbis-team.com & книге Котерова
У меня в подписи последняя ссылка, там я написал ответ о разнице.
Учиться надо по irbis-team.com & книге Котерова
_____________
С уважением, Алексей.