деталі підручника
Тема: PHP, регулярні вирази
![Приховуємо контент від гостей (веб-розробки допомогою фреймворка) Приховуємо контент від гостей](https://images-on-off.com/images/158/skrivaemkontentotgostey-e35f78d1.jpg)
Фреймворк YII2. Швидка розробка з сучасним PHP фреймворком
Дізнайся тонкощі сучасної веб-розробки за допомогою фреймворка YII2
Розмір архіву: 67 Mb
Отже, з'єднавши вихідні з обох зазначених уроків, я отримав приблизно таку картину:
![Приховуємо контент від гостей (Швидка розробка сучасним фреймворком) Приховуємо контент від гостей](https://images-on-off.com/images/158/skrivaemkontentotgostey-fe143947.jpg)
Тепер про те, як би ми хотіли публікувати приховане вміст. Як правило, для цього використовуються BB-теги HIDE. Не будемо оригінальними і скористаємося традиційною назвою. Таким чином, публікація прихованої посилання буде мати наступний вигляд:
![Приховуємо контент від гостей (Швидка розробка сучасним) Приховуємо контент від гостей](https://images-on-off.com/images/158/skrivaemkontentotgostey-e35f78d1.jpg)
Фреймворк YII2. Швидка розробка з сучасним PHP фреймворком
Дізнайся тонкощі сучасної веб-розробки за допомогою фреймворка YII2
![Приховуємо контент від гостей (регулярні вирази) Приховуємо контент від гостей](https://images-on-off.com/images/158/skrivaemkontentotgostey-5e1167f7.jpg)
Перш за все, попрацюємо з гостем і доб'ємося того, щоб замість поточного результату він бачив повідомлення про прихований контенті. Як Ви, напевно, вже здогадалися, нам будуть потрібні можливості регулярних виразів. Отже, давайте складемо шаблон:
Даний шаблон шукає в тексті BB-теги HIDE і все, що в них міститься. При цьому шаблон буде регістронезавісімого (завдяки модифікатору «i») і мультістрочним (завдяки модифікатору «s», що забезпечує збіг метасимвола точки з перенесенням рядка). Варто також звернути увагу, що після квантіфікатора «*» ми поставили ще один квантіфікатор - «?» - тим самим роблячи перший квантіфікатор «ледачим». Це забезпечує коректну роботу шаблону з двома і більше блоками HIDE в тексті.
Отже, шаблон готовий і ми можемо приступити до написання нескладної функції:
І кілька правил для класу hide:
І викличемо функцію hide_content () для виведеного тексту. У нашому випадку це буде мати такий вигляд:
У змінну $ text потрапить пропущений через функцію hide_content () виводиться текст. Ну а рядком нижче він буде виведений.
Тепер замість BB-тегів HIDE і їх вмісту гість буде бачити те, що ми і хотіли:
![Приховуємо контент від гостей (приховуємо контент) Приховуємо контент від гостей](https://images-on-off.com/images/158/skrivaemkontentotgostey-295b07b6.jpg)
Тут ми трохи змінили шаблон. Оскільки нам потрібно показувати вміст тегів HIDE, ми скористалися запоминающими дужками - (. *?). Ну а в функції preg_replace (), відповідно, посилаємося на запомненное - $ 1.
І кілька правил для класу show:
![Приховуємо контент від гостей (веб-розробки допомогою фреймворка) Приховуємо контент від гостей](https://images-on-off.com/images/158/skrivaemkontentotgostey-f6f28de7.jpg)
От і все. Завдання реалізована і, як бачите, реалізується вона досить просто. Успіху і до нових зустрічей!
![Приховуємо контент від гостей (YII2 Швидка розробка сучасним) Приховуємо контент від гостей](https://images-on-off.com/images/158/skrivaemkontentotgostey-e35f78d1.jpg)
Фреймворк YII2. Швидка розробка з сучасним PHP фреймворком
Дізнайся тонкощі сучасної веб-розробки за допомогою фреймворка YII2
Найсвіжіші новини IT і веб-розробки на нашому Telegram-каналі
![Приховуємо контент від гостей (Швидка розробка сучасним фреймворком) Приховуємо контент від гостей](https://images-on-off.com/images/158/skrivaemkontentotgostey-005a2271.jpg)
Хочете вивчити регулярні вирази на PHP?
Прямо зараз подивіться 12-ти годинний курс за регулярними виразами на PHP!