PHP Class Not Found Fix

Class not found errors usually come from autoloading, namespaces, missing files or case-sensitive deployment differences.

Symptoms

  • PHP fatal error says Class not found.
  • It works locally but fails on Linux production.
  • Composer package was installed but the class is unavailable.

Likely causes

  • Namespace does not match directory or file name.
  • Composer autoload files are stale.
  • File case differs between macOS/Windows and Linux.
  • Deployment skipped vendor or generated files.

Fix steps

  1. Check namespace and use statements.
  2. Run composer dump-autoload.
  3. Verify file names match class case exactly.
  4. Clear framework caches after deployment.

Verify the fix

  • Run a minimal PHP script that references the class.
  • Check composer.json autoload rules.
  • Deploy vendor files or run composer install on the server.

FAQ

Why only on production?

Linux file systems are usually case-sensitive, while local development may hide case mismatches.

Can opcache cause this?

Stale caches can contribute after deployment. Clear relevant caches after fixing files.

Related tools and guides

Last updated: May 18, 2026