Leading 0 is being removed : <p>I have a problem I've never come across before in the 14 months I've been using Laravel.</p>

<p>I have a user registration system. A pretty basic requirement for any application right. I have the usual credentials name, username, email, password, and a phone number.</p>

<p>If I submit the number in the following format 086123456. The leading 0 is being removed from what is saved in the DB. The phone_number field is a integer.</p>

<p>Any idea what is going on here.</p>

<p>User Model</p>

<pre><code>&lt;?php

namespace App;

use Illuminate\Notifications\Notifiable;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Foundation\Auth\User as Authenticatable;
use App\Property;
use Tymon\JWTAuth\Contracts\JWTSubject;


class User extends Authenticatable implements JWTSubject
{
    use Notifiable;

    protected $fillable = [
        'first_name', 'last_name', 'username', 'email', 'phone_number', 'password',
    ];

    protected $hidden = [
        'password', 'remember_token',
    ];

    protected $casts = [
        'email_verified_at' =&gt; 'datetime',
    ];

    public function properties()
    {
        return $this-&gt;hasMany(Property::class);
    }

    public function getJWTIdentifier()
    {
        return $this-&gt;getKey();
    }

    public function getJWTCustomClaims()
    {
        return [];
    }
}
</code></pre>

<p>Register Function</p>

<pre><code> public function register() 
    {
        $user =  User::create(['first_name' =&gt; request('first_name'), 'last_name' =&gt; request('last_name'), 'username' =&gt; request('username'), 'email' =&gt; request('email'), 'phone_number' =&gt; request('phone_number'), 'password' =&gt; bcrypt(request('password'))]);
        return response()-&gt;json($user);
    }
</code></pre>
