Package Data | |
---|---|
Maintainer Username: | xiyusullos |
Maintainer Contact: | i@xy-jit.cc (xiyusullos) |
Package Create Date: | 2017-03-22 |
Package Last Update: | 2017-03-24 |
Home Page: | |
Language: | PHP |
License: | MIT |
Last Refreshed: | 2024-11-23 03:15:34 |
Package Statistics | |
---|---|
Total Downloads: | 2,215 |
Monthly Downloads: | 1 |
Daily Downloads: | 0 |
Total Stars: | 15 |
Total Watchers: | 1 |
Total Forks: | 0 |
Total Open Issues: | 0 |
Install the latest version with
composer require xiyusullos/nullable
<?php
use xiyusullos\Nullable;
class Obj
{
use Nullable;
// ...
}
$obj = new Obj();
echo $obj->a->b->c;
<?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;
Nullable
is licensed under the MIT License - see the LICENSE
file for details