🔎

Echo або Print

Є різниця між використанням Echo та Print в PHP? Якщо є, то коли потрібно який з операторів використовувати?
php
1 відповідь
  • Дмитро
    Виведення даних різних типів (звичайних текстових рядків, рядків HTML – коду, а також цифр, масивів та ін.) у вікно браузера можна здійснити за допомогою мовних конструкцій Print та Echo. Вони направляють виведення значень у вихідний документ, який відображається браузером. При виконанні прикладів та інших експериментальних кодів мовою PHP, а також при налагодженні реальних сценаріїв дуже корисно організувати виведення проміжних та остаточних результатів на екран.

    Давайте опишемо різницю між ними, і зрозуміємо, коли потрібно використовувати Echo або Print.

    По-перше, Print поводиться як функція, яка завжди повертає значення 1. Конструкція Echo, яка не є функцією, нічого не повертає, в результаті чого виконується швидше. Причиною цього є той простий факт, що Print повертає статус стану досконалої операції, в той час, як Echo просто друкує текст і нічого більше не робить. Застосовуватися Print може в умовних конструкціях з тернарним оператором:
    $var = 5;
    ($var > 0) ? print 'Yes' : print 'No';
    Якщо в цьому прикладі Print замінити на Echo, то скрипт працювати не буде, тому що Echo - не функція. Цей вираз можна записати і з конструкцією Echo:
    echo ($var > 0) ? 'Yes' : 'No';
    На перший погляд, використання подібних конструкцій комусь може здатися зовсім не потрібним, але, якщо подумати, можна знайти в цій особливості багато корисних застосувань, тому на озброєння варто взяти.

    Друге, Print та Echo розрізняються за переданими параметрами. За допомогою функції Print можна передавати лише один параметр, у той час як Echo приймає їхню величезну кількість. Це можна зрозуміти на наступному прикладі:
    echo 'Цей', 'рядок', 'був', 'створений', 'декількома параметрами.';
    echo 'Цей'. 'рядок'. 'був'. 'створений'. 'за допомогою конкатенації.';
    // Print працює тільки так:
    print 'Цей'. 'рядок'. 'був'. 'створений'. 'за допомогою конкатенації.';
    Краще, звичайно, для виведення інформації використовувати Echo за замовчуванням і Print, де це необхідно.