Эта библиотека позволяет разработчикам легко получать информацию о праздничных днях в Великобритании. Праздники можно получить для Англии и Уэльса, Шотландии и Северной Ирландии. Информация об этих праздниках может быть ограничена по месяцу или дате.
Для установки просто запустите следующую команду композитора.
composer require rapidwebltd/php-uk-bank-holidays
Не забудьте включить vendor/autoload.php
если ваша платформа не делает этого за вас.
Получить выходные дни на определенную дату можно следующим образом. По умолчанию это вернет каникулы из Англии и Уэльса.
use RapidWeb UkBankHolidays Factories UkBankHolidayFactory ;
$ holidays = UkBankHolidayFactory:: getByDate ( 2017 , 01 , 2 );
var_dump ( $ holidays );
Все методы UkBankHolidayFactory
возвращают массив объектов UkBankHoliday
. В следующем фрагменте показан пример объекта для новогоднего праздника 2017 года, который приходится на 2 января 2017 года.
array ( 1 ) {
[ 0 ]=>
object(RapidWebUkBankHolidaysObjectsUkBankHoliday) #46 (4) {
[ " title " ]=>
string( 16 ) " New Year’s Day "
[ " date " ]=>
string( 10 ) " 2017-01-02 "
[ " notes " ]=>
string( 14 ) " Substitute day "
}
}
Этот объект содержит название праздника, дату его наступления и предоставленные правительством примечания к празднику, если таковые имеются. Все это находится в публичном доступе.
Если вы хотите получить праздничные дни в Шотландии или Северной Ирландии, используйте четвертый необязательный аргумент следующим образом.
$ englandWalesHolidays = UkBankHolidayFactory:: getByDate ( 2017 , 01 , 2 , ' england-and-wales ' );
$ scotlandHolidays = UkBankHolidayFactory:: getByDate ( 2017 , 01 , 2 , ' scotland ' );
$ northernIrelandHolidays = UkBankHolidayFactory:: getByDate ( 2017 , 01 , 2 , ' northern-ireland ' );
$ allHolidays = array_merge ( $ englandWalesHolidays , $ scotlandHolidays , $ northernIrelandHolidays );
Вы можете использовать эту библиотеку для получения всех праздников или, альтернативно, праздников, ограниченных месяцем или датой. Это легко сделать с помощью методов getAll
, getByMonth
и getByDate
соответственно.
См. следующие примеры.
$ allHolidays = UkBankHolidayFactory:: getAll ();
$ januaryHolidays = UkBankHolidayFactory:: getByMonth ( 2017 , 01 );
$ newYearsHolidays = UkBankHolidayFactory:: getByDate ( 2017 , 01 , 2 );
Все эти методы принимают дополнительный необязательный аргумент, указывающий место праздников, которые вы хотите получить. Более подробную информацию см. в разделе «Ограничение местоположения» выше.