Блог веб разработки статьи | видеообзоры | исходный код

Блог веб разработки статьи | видеообзоры | исходный код

webfanat вконтакте webfanat youtube

Компоненты php

Компоненты  php

Всем привет и давайте рассмотрим определение компонента. Компонент - это по сути комплект кода, позволяющий решать определенную задачу. Компоненты прежде всего используются как готовое решение и поэтому прежде чем самому писать код можно поискать компонент решающий схожую для вас задачу.

Найти компоненты можно на сайте https://packagist.org/ , здесь перечислены одни из лучших компонентов php, а также есть поиск по ключевым словам.

Сам сайт packagist это всего лишь каталог для поиска компонентов. А устанавливать их следует с помощью composer (https://getcomposer.org/). Composer - представляет собой менеджер зависимостей php-компонентов. Как правило он запускается в командной строке. Для работы ему необходимо указать требуемые php-компоненты и он загрузит и настроит автозагрузку этих компонентов в проект. Менеджер зависимостей composer также можем взаимодействовать с сайтом packagist.

Установку composer можно осуществить двумя способами через инсталлятор который вы можете взять с сайта https://getcomposer.org/, либо через терминал. Отмечу что при первом способе вам придется указать путь до файла php.exe. Подробности установки описаны здесь https://getcomposer.org/download/.

Обычно я работаю с composer через консоль openServer. После установки мы должны убедится что все прошло хорошо. Для этого в терминале введем команду composer и должна появиться общая информация о composer и перечне его команд.

Далее, давайте теперь попробуем найти и загрузить компонент. Перейдем на сайт packagist(https://getcomposer.org/) и введем в поле demo. Ниже нам выводится перечень компонентов с их описанием. Выбираем, допустим, из списка компонент rinvex/country.

Смотрим его описание:

Rinvex Country - простой и легкий пакет для гибкого извлечения деталей страны. Целая группа данных, включая имя, демоним, капитал, изо-коды, коды набора, геоданные, валюты, флаги, эможи и другие атрибуты для всех 250 стран по всему миру.

Переходя в него нам открывается документация по данному компоненту, а именно как им пользоваться в своих проектах.

Теперь давайте установим компонент rinvex/country в наш проект. Для этого нам понадобиться создать в корне нашего проекта файл composer.json со следующим содержимым:

{
  "require" : {
     "rinvex/country" : "v2.0.0"
  }
}

здесь в этом файле в формате json мы можем указывать перечень компонентов и их версий которые мы хотим загрузить для данного проекта. В нашем случае мы указали что хотим загрузить компонент с названием rinvex/country версии v2.0.0 Перечень доступных версий вы можете посмотреть в документации компонента на сайте packagist.

Внимательно выбирайте версии компонентов и сморите в них, какая используется версия php.

Далее нам необходимо запустить файл composer.json, я это делаю через консоль openServer, прописывая путь к корню проекта , где наш файл composer.json, к примеру:

cd domains/myProject

и далее запускаю установку компонентов через composer:

composer install

после выполнения данной команды, если все прошло успешно, в корне нашего проекта должен появиться файл composer.lock и папка vendor которая содержит загруженные компоненты.

И теперь для того чтобы использовать компонент rinvex/country в нашем проекте нам достаточно подключить файл autoload.php который находится в папке vendor.

require "vendor/autoload.php";

после этого мы можем пользоваться всем функционалом компонентов.

Функционал компонентов непосредственно описан в документации.

Давайте это проверим:

require "vendor/autoload.php";
$russian = country('ru');
echo $russian->getName()."<br/>";
echo $russian->getOfficialName()."<br/>";
echo $russian->getArea()."<br/>";
print_r($russian->getCurrencies());

и видим что функционал компонента rinvex/country описанный в документации отлично работает в нашем проекте.

На этом дорогие друзья на сегодня все. Я надеюсь что данная статья была для вас полезна.

А я желаю вам успехов и удачи!

Оцените статью:

Статьи

Комментарии

Внимание!!! Комментарий теперь перед публикацией проходит модерацию

Роман

13:59 21-01-2020

Большое спасибо

Игорь

09:20 18-08-2019

Класс

Реклама

Запись экрана

Данное расширение позволяет записывать экран и выводит видео в формате webm