made some refactoring

This commit is contained in:
2025-07-09 05:28:39 +03:00
parent f76eb08fe0
commit 38676bc9fd
69 changed files with 3075 additions and 355 deletions

View File

@@ -0,0 +1,39 @@
<?php
/**
* @package: patterns
* @author: Yevhen Odynets
* @date: 2025-07-03
* @time: 20:20
*/
declare(strict_types = 1);
use Pattern\Creational\AbstractFactory\{ParcelSender, ProvidersEnum as PostProvider};
/**
* @param array $parcels
*
* @return void
*/
function doDeliver(array $parcels): void
{
foreach ($parcels as $parcel) {
['provider' => $provider, 'destination_address' => $address] = $parcel;
$result = (new ParcelSender($provider, $address))->send();
echo $result ? "✔️ Sent successfully\n" : "❌ Sending failed\n";
}
}
$parcels = [
['provider' => PostProvider::NovaPost, 'destination_address' => "02020,\r\nм. Щастя, рХТЗ"],
[
'provider' => PostProvider::UkrPost,
'destination_address' => "Голобородько Семен Юхимович,\r\nn02020, Львівська обл.,\r\nм. Городок, вул. Головна, буд. 1, кв. 50",
],
['provider' => PostProvider::Meest, 'destination_address' => "Адреса 3"],
['provider' => PostProvider::Justin, 'destination_address' => "Відділення 777"],
];
doDeliver($parcels);