Laravel Hetzner Storagebox

PHP MIT

Production-ready Laravel package for integrating Hetzner Storage Box into Laravel applications using the native Storage facade and filesystem API.

Stars
19
Forks
0
Downloads
2,357
Open Issues
0
Files main

Repository Files

Loading file structure...
src/DTOs/Location.php
<?php

namespace GhostCompiler\Hetzner\StorageBox\DTOs;

class Location
{
    public int $id;

    public string $name;

    public string $description;

    public string $country;

    public string $city;

    public float $latitude;

    public float $longitude;

    public string $networkZone;

    /**
     * Create a new DTO instance from array data.
     */
    public static function fromArray(array $data): self
    {
        $loc = new self;
        $loc->id = (int) ($data['id'] ?? 0);
        $loc->name = (string) ($data['name'] ?? '');
        $loc->description = (string) ($data['description'] ?? '');
        $loc->country = (string) ($data['country'] ?? '');
        $loc->city = (string) ($data['city'] ?? '');
        $loc->latitude = (float) ($data['latitude'] ?? 0.0);
        $loc->longitude = (float) ($data['longitude'] ?? 0.0);
        $loc->networkZone = (string) ($data['network_zone'] ?? '');

        return $loc;
    }
}