NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky

details() vracia Place, alebo null, ak miesto neexistuje:

use RoundlyConsulting\GooglePlaces\DataTransferObjects\DetailsQuery;
use RoundlyConsulting\GooglePlaces\DataTransferObjects\Place;
use RoundlyConsulting\GooglePlaces\Facades\GooglePlaces;

$place = GooglePlaces::details($prediction->placeId); // or new DetailsQuery(...)

if ($place instanceof Place) {
    echo $place->name;
    echo $place->id;
    echo $place->formattedAddress;
    echo implode(', ', $place->types);

    echo $place->geometry?->location->latitude;
    echo $place->geometry?->location->longitude;

    foreach ($place->openingHours?->periods ?? [] as $period) {
        // from/to are "HHMM" strings; integer accessors are also available.
        echo "{$period->day}: {$period->from}–{$period->to}";
        echo "{$period->openHour}:{$period->openMinute}";
    }

    // Photo resource names — pass to photoUrl().
    foreach ($place->photos as $photoName) {
        $url = GooglePlaces::photoUrl($photoName, maxWidth: 800, maxHeight: 600);
    }

    $raw = $place->raw; // untouched Google payload
}

Field maska a jazyk pre jednu požiadavku

Cez DetailsQuery prepíšete nastavenú field masku pre jednu požiadavku alebo si vyžiadate lokalizovanú odpoveď:

// Override the field mask for this request only:
new DetailsQuery($placeId, fields: ['id', 'displayName', 'location', 'types', 'photos']);

// Localised response:
new DetailsQuery($placeId, language: 'sk');

Objekt Place

VlastnosťTypObsah
namestringZobrazovaný názov.
id?stringGoogle place id.
formattedAddress?stringCelá naformátovaná adresa.
typeslist<string>Typy miesta.
geometry?Geometrylocation, viewportNorthEast, viewportSouthWest.
openingHours?OpeningHoursisOpen a periods (day, from, to, openHour, openMinute, closeHour, closeMinute).
photoslist<string>Názvy fotografií pre photoUrl() / photo().
addressComponentslist<AddressComponent>Vyplnené len ak je addressComponents vo field maske.
rawarrayNezmenená odpoveď Google.

Obdobia otváracích hodín poskytujú from a to ako reťazce „HHMM“ a celočíselné openHour, openMinute, closeHour a closeMinute. day sa riadi konvenciou Google: 0 je nedeľa.

Pomocné metódy Place

DTO Place obsahuje praktické metódy:

$place->isOpenNow();           // bool
$place->coordinates();         // ?Location
$place->primaryType();         // ?string
$place->openingHoursFor(1);    // list<OpeningHourPeriod> for Monday (0 = Sunday)
$place->components();          // AddressComponents (needs addressComponents in the field mask)

primaryType() vráti primaryType od Google, ak ho odpoveď obsahuje, inak prvý z typov miesta. Rovnaký objekt Place vracia aj textové a okolité vyhľadávanie a find place.

Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

Ďalšie spôsoby podpory vrátane kryptomien

Odoslaním daru súhlasíte s našimi podmienkami prijímania darov.

Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.