xiyusullos / nullable
chain calls on object whatever the object is null or not
Installs: 2 215
Dependents: 0
Suggesters: 0
Security: 0
Stars: 15
Watchers: 1
Forks: 0
Open Issues: 0
Requires
- php: >=5.4.0
Requires (Dev)
- phpunit/phpunit: ^6.0
This package is not auto-updated.
Last update: 2024-11-20 01:01:01 UTC
README
Installation
Install the latest version with
composer require xiyusullos/nullable
Usage
Basic Usage
<?php use xiyusullos\Nullable; class Obj { use Nullable; // ... } $obj = new Obj(); echo $obj->a->b->c;
Laravel Usage
<?php namespace App\Models; use Illuminate\Database\Eloquent\Model; use xiyusullos\Nullable; class Profile extends Model { // supposed an attribute of departmentName use Nullable; public function user() { return $this->belongsTo(User::class); } // ... } class User extends Model { use Nullable; public function profile() { return $this->hasOne(Profile::class); } // ... } class Blog extends Model { use Nullable; public function user() { return $this->belongsTo(User::class); } // ... } // wanna get the writer's department name who posted the blog #1 // without Nullable $blog = Blog::find(1); $user = $blog->user; if ($user) { $profile = $user->profile; if ($profile) { $departmentName = (string) $profile->departmentName; } } // that's so annoying! // with Nullable $blog = Blog::find(1); $departmentName = (string) $blog->user->profile->departmentName;
About
Author
License
Nullable
is licensed under the MIT License - see the LICENSE
file for details