Skip to content

Instantly share code, notes, and snippets.

@FoggyK
FoggyK / phpSessionCookie.md
Created August 7, 2017 17:52
Дз по сессиям и кукам

Задачи по сессиям

Примеры решения задач

Задача 1

Сделайте две страницы: index.php и hello.php. При заходе на index.php спросите с помощью формы имя пользователя, запишите его в сессию. При заходе на hello.php поприветствуйте пользователя фразой "Привет, %Имя%!".

Решение:

Страница index.php:

@FoggyK
FoggyK / dzFile.md
Last active February 22, 2018 15:51
Дз по работе с файловой системой

Работа с файлами

  1. Создайте файл 'test.txt' и запишите в него фразу 'Привет, мир!'.

  2. Считайте данные из файла 'test.txt' и выведите их на экран.

  3. Переименуйте файл 'test.txt' в 'mir.txt'.

  4. Создайте копию файла 'mir.txt' и назовите ее 'world.txt'.

Все задачи будут по данной таблице workers (если не сказано иное):

Создайте таблицу с такими полями и заполните её данными.

id name age salary
@FoggyK
FoggyK / Model.md
Last active August 10, 2017 16:14

Родительский класс для подключения к бд.

  1. Реализуйте конструктор, который будет создавать подключение к бд. Все конфиги для подключения должны хранится в полях класса.

Модели

1. Модель пользователи

  1. Метод получения всех пользователей
  2. Метод получения пользователя
  3. Добавление пользователя
  4. Редактирование пользователя
  5. Удаление пользователя

Загрузка Zend Skeleton Application

Скелетное приложение - это простой вебсайт на основе ZF3, который содержит основные необходимые вещи для создания собственных вебсайтов.

Код скелетного приложения хранится на хостинге GitHub и публично доступен по данной ссылке. Однако вы обычно не загружаете код скелетного приложения напрямую, вместо этого вы используете менеджер зависимостей Composer как показано далее.

Сначала вам нужно получить последнюю версию Composer. Вы делаете это с помощью следующих команд:

cd domains

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
<?php
use Zend\Mvc\Application;
use Zend\Stdlib\ArrayUtils;
/**
* Это облегчает нам работу с путями.
* Все пути теперь - относительно корня приложения.
*/
chdir(dirname(__DIR__));

Ввод данных в HTTP-ответ

Хотя вы редко взаимодействуете с данными HTTP-ответа (response) напрямую, вы можете сделать это с помощью метода getResponse() из базового класса AbstractActionController. Метод getResponse() возвращает экземпляр класса Zend\Http\PhpEnvironment\Response. Таблица 4.4 содержит самые важные методы этого класса:

Таблица 4.4. Методы класса Zend\Http\PhpEnvironment\Response.

3.10. Менеджер сервисов

Веб-приложение можно представить как набор сервисов. Например, у вас может быть сервис аутентификации, ответственный за вход пользователей на сайт, менеджер сущностей, ответственный за доступ к базе данных, менеджер событий, ответственный за вызов событий и их обработку, и т.д.

В Zend Framework класс ServiceManager - это централизованный контейнер для всех сервисов приложения. Менеджер сервисов реализован в компоненте Zend\ServiceManager в качестве класса ServiceManager. Диаграмма наследования классов приведена

Имена шаблонов представления

Переопределение стандартных имен шаблонов представления

Когда вы возвращаете данные с контейнером переменных ViewModel из метода действия вашего контроллера, Zend Framework знает имя соответствующего файла шаблона представления. Например, для метода aboutAction() вашего IndexController'а, ZF3 автоматически использует шаблон представления about.phtml.

ZF3 определяет корректное имя шаблона представления по имени модуля, имени контроллера и имени действия. Например, действие IndexController::aboutAction(), принадлежащее модулю Application будет иметь шаблон представления application/index/about.phtml по умолчанию.

Если название вашего контроллера или действия состоит из нескольких слов в верблюжьем регистре (например, UserRegistrationController и registrationStep1Action), ему будет соответствовать шаблон представления application/user-registration/registration-step-1.phtml (имена в верблюжьем регистре преобразуются в нижний регистр, и слова разделяются дефисами).

/
@FoggyK
FoggyK / Php Лекция 3.md
Last active February 3, 2018 08:55
Дз к Лекции 3.

Домашнее задание

  1. блок с названием Задачи делаем в файле Php3Tasks.php и присылаем мне ссылку на гист.
  2. блок тренировка делаем для себя

Задачи

  1. Преобразуйте строку 'var_test_text' в 'varTestText'. Скрипт, конечно же, должен работать с любыми аналогичными строками.

  2. Дана строка следующего вида: 5 цифр, затем пробел, затем еще 5 цифр. Например, дана такая строка '12345 67890'. Сделайте из нее строку '54321 09876'.

  3. Дан массив с числами. Выведите на экран все числа, в которых есть цифра 3.