Error map
TypeError: Argument #1 must be of type X, Y given Laravel/PHP: TypeError: App\Services\Mailer::send(): Argument #1 ($user) must be of type App\Models\User, null given
Laravel · layer 4, Application & API
Centre: this error. First ring: errors it is linked with (12). Outer ring: what those are linked with. Colours show the layer of a request each error belongs to. Click any dot to re-centre the map on it; hover to follow its connections. The centre dot opens the error page.
Directly related (12)
Deprecated: Implicit conversion from float 2.5 to int loses precision
PHP 8.1+ warns when a float with a fractional part is silently converted to int (array keys, % operator, int parameters).
Fatal error: Uncaught TypeError: foo(): Argument #1 ($x) must be of type int, string given
A function received a value of the wrong type for a typed parameter.
Warning: Array to string conversion
An array was used where a string is expected — echoing it, concatenating it, or passing it to a string function.
Fatal error: Uncaught TypeError: Unsupported operand types: string + int
An arithmetic or array operator was used with incompatible types (PHP 8 is stricter than PHP 7).
Fatal error: Uncaught Error: Cannot use object of type stdClass as array
Code used array syntax (`$x['key']`) on an object.
Laravel/PHP: Allowed memory size of 134217728 bytes exhausted (tried to allocate 20480 bytes) in vendor/laravel/framework
A request (or artisan job) used more memory than PHP's `memory_limit` allows.
Laravel: Illuminate\Auth\Access\AuthorizationException: This action is unauthorized.
A policy or gate denied the action for the current user, so Laravel returned HTTP 403.
Laravel: Error: Class "App\Models\Post" not found
PHP can't find the class you referenced — a missing import, wrong namespace or file name, or a stale autoloader.
Laravel/PHP 8: ErrorException: Undefined array key "name" (PHP 8) / Undefined index: name (PHP 7)
Code read an array element whose key isn't present.
Laravel: InvalidArgumentException: Unable to locate a class or view for component [alert].
A `` Blade tag has no matching class or anonymous component view.
Laravel: Symfony\Component\Console\Exception\CommandNotFoundException: Command "make:livewire" is not defined. Did you mean one of these?
`php artisan` doesn't know the command you typed — typo, missing package or an unregistered service provider.
Laravel/PHP 8: ErrorException: Attempt to read property "name" on null
You accessed a property on a value that is `null`, typically an empty relationship or a query that found nothing.
Two steps away (35)
java.lang.ClassCastException: class A cannot be cast to class B
An object was cast to a type it isn’t.
DeprecationWarning: Buffer() is deprecated due to security and usability issues (DEP0005)
Code (yours or a dependency) uses the deprecated new Buffer() constructor.
Deprecated: strlen(): Passing null to parameter #1 ($string) of type string is deprecated
PHP 8.1+ warns when null is passed to a built-in function that expects a string/int.
PHP Fatal error: Allowed memory size of X bytes exhausted
The script tried to use more memory than PHP’s `memory_limit` allows.
PHP Fatal error: Uncaught Error: Call to undefined function
PHP can’t find the function you called — usually a missing extension, missing include, or namespace issue.
Fatal error: Cannot redeclare function foo() (previously declared in …)
The same function (or class) was defined twice — usually a file included more than once.
TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received undefined
A Node API got an argument of the wrong type — usually undefined because an env var or config value is missing.
Warning: Undefined variable $x
PHP read a variable that was never assigned in the current scope.
Composer: PHP Fatal error: Allowed memory size of 1610612736 bytes exhausted
Composer ran out of memory while resolving or installing dependencies.
Deprecated: Creation of dynamic property Foo::$bar is deprecated
PHP 8.2+ deprecates creating properties that aren’t declared in the class.
System.InvalidCastException: Unable to cast object of type 'X' to type 'Y'
An explicit cast failed because the object’s runtime type isn’t the target type.
Swift: Cannot convert value of type 'X' to expected argument type 'Y'
The value’s type doesn’t match what the function or property expects.
Fatal error: Uncaught Error: Call to a member function x() on null
Code called a method on a variable that is null instead of an object.
Fatal error: Uncaught ArgumentCountError: Too few arguments to function foo(), 1 passed and exactly 2 expected
A function was called with fewer arguments than it requires.
Fatal error: Uncaught DivisionByZeroError: Division by zero
Code divided by zero (or used modulo by zero) — PHP 8 throws instead of warning.
Segmentation fault (core dumped)
A program accessed memory it wasn’t allowed to, and the kernel killed it with SIGSEGV (exit code 139).
Killed / Out of memory: Killed process (Linux OOM killer)
The kernel ran out of memory and killed a process to recover — the program just prints “Killed” (exit code 137).
Laravel: No application encryption key has been specified.
Laravel’s APP_KEY is missing, so it can’t encrypt sessions and cookies.
Laravel: Target class [App\Http\Controllers\X] does not exist.
Laravel’s container couldn’t find the controller or class named in a route or binding.
Laravel: ErrorException: Undefined variable $posts (View: /resources/views/posts/index.blade.php)
A Blade template uses a variable the controller didn't pass to the view.
Laravel: Illuminate\Database\Eloquent\ModelNotFoundException: No query results for model [App\Models\Post] 5
`findOrFail`, `firstOrFail` or route-model binding couldn't find a record, so Laravel returns a 404.
Laravel: BadMethodCallException: Call to undefined method App\Models\Post::whereTitle() / Illuminate\Database\Eloquent\Builder::foo()
You called a method the model, builder or collection doesn't have.
Laravel: InvalidArgumentException: Unable to locate factory with name [default] [App\Models\Post] / Call to undefined method App\Models\Post::factory()
A seeder or test calls a model factory that is missing, or the model doesn't use the `HasFactory` trait.
Laravel: InvalidArgumentException: View [posts.index] not found.
Laravel can't find the Blade file for the view name you returned.
Warning: Undefined array key / Undefined index
Your code reads an array key that doesn’t exist — common with `$_GET`, `$_POST` and decoded JSON.
Warning: Trying to access array offset on value of type null
Code used `$x['key']` where `$x` is null — usually a lookup or function that returned nothing.
Composer/Laravel: Your Composer dependencies require a PHP version ">= 8.2.0". You are running 8.1.12
The installed dependencies need a newer PHP than the one running the app (CLI or web server).
Composer: PHP Fatal error: Allowed memory size of 1610612736 bytes exhausted (tried to allocate 4096 bytes) in phar:///usr/local/bin/composer
Composer ran out of PHP memory while resolving or installing dependencies.
Laravel Livewire: Livewire\Exceptions\ComponentNotFoundException: Unable to find component: [admin.users]
Livewire can't resolve a component alias to a class — wrong name, namespace or discovery.
Laravel: 419 Page Expired (CSRF token mismatch)
Laravel rejected a POST because the CSRF token was missing, expired or didn’t match the session.
Laravel: The stream or file "storage/logs/laravel.log" could not be opened in append mode: Failed to open stream: Permission denied
The web server can’t write to Laravel’s storage or bootstrap/cache directories.
Laravel: Vite manifest not found at: public/build/manifest.json
Laravel’s @vite directive can’t find the compiled asset manifest because assets weren’t built.
Laravel: Expected response code "250" but got code "550", with message "550 5.7.1 Relaying denied"
Laravel connected and authenticated but the SMTP server rejected the message at the RCPT TO / MAIL FROM / DATA step with the code…
Laravel: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' already exists
A migration tries to create a table that is already in the database.
Laravel: Illuminate\Http\Exceptions\ThrottleRequestsException: Too Many Attempts. / 429 Too Many Requests
Laravel's rate limiter blocked the client for exceeding the allowed requests per minute.
Map another error
Popular: 500403400ORA-009331064Critical errorFileNotFoundException assemblyTypeError