PHP code example of metamel / laravel-addresses

1. Go to this page and download the library: Download metamel/laravel-addresses library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

metamel / laravel-addresses example snippets


// Get instance of your model
$user = new \App\Models\User::find(1);

// Create a new address
$user->addresses()->create([
    'label' => 'Default Address',
    'name' => 'John Doe',
    'organization' => 'Something Went Wrong LTD.',
    'country_code' => 'gb',
    'street' => '10 Downing Street',
    'state' => 'somewhere over the rainbow',
    'city' => 'London',
    'postal_code' => 'SW1A 2AA',
    'latitude' => '51.503364',
    'longitude' => '-0.127625',
    'is_primary' => true,
    'is_billing' => true,
    'is_shipping' => true,
]);

// Create multiple new addresses
$user->addresses()->createMany([
    [...],
    [...],
    [...],
]);

// Find an existing address
$address = app('metamel.addresses.models.address')->find(1);

// Update an existing address
$address->update([
    'label' => 'Default Work Address',
]);

// Delete address
$address->delete();

// Alternative way of address deletion
$user->addresses()->where('id', 123)->first()->delete();

// Get instance of your model
$user = new \App\Models\User::find(1);

// Get attached addresses collection
$user->addresses;

// Get attached addresses query builder
$user->addresses();

// Scope Primary Addresses
$primaryAddresses = app('metamel.addresses.models.address')->isPrimary()->get();

// Scope Billing Addresses
$billingAddresses = app('metamel.addresses.models.address')->isBilling()->get();

// Scope Shipping Addresses
$shippingAddresses = app('metamel.addresses.models.address')->isShipping()->get();

// Scope Addresses in the given country
$egyptianAddresses = app('metamel.addresses.models.address')->InCountry('eg')->get();

// Find all users within 5 kilometers radius from the latitude/longitude 31.2467601/29.9020376
$fiveKmAddresses = \App\Models\User::findByDistance(5, 'kilometers', '31.2467601', '29.9020376')->get();

// Alternative method to find users within certain radius
$user = new \App\Models\User();
$users = $user->lat('51.503364')->lng('-0.127625')->within(5, 'kilometers')->get();
shell
    php artisan vendor:publish --tag=addresses-config
    
shell
    php artisan migrate