Back to Blog
Developer guide
PHPApril 26, 2026

Common PHP Errors Beginners Make: A Developer's Guide to Troubleshooting

As a PHP developer, you're no stranger to the frustration of dealing with errors. Whether you're building a website, web application, or API, errors can hold you back from delivering a seamless user experience. In this article, we'll explore the top 20 PHP errors beginners make and provide actionable advice on how to fix them. By the end of this guide, you'll be equipped with the knowledge and skills to troubleshoot common PHP errors and get back to coding with confidence.

1. PHP Fatal Error: Cannot redeclare class

This error occurs when you've tried to declare a class with the same name as an existing one, causing a fatal error in your PHP script.

Why It Happens

This error is often caused by accidental duplicate class declarations or failed autoloading of classes.

How to Fix It

To fix this error, ensure that you're not declaring classes with the same name multiple times in your script. Check your class names and make sure they're unique. If you're using an autoloader, verify that it's functioning correctly and loading the required classes.


2. Parse Error: Syntax Error, unexpected T_VARIABLE

This error occurs when your PHP script contains a syntax error, such as a missing semicolon or incorrect variable declaration.

Why It Happens

This error is often caused by typos, missing semicolons, or incorrect variable syntax.

How to Fix It

To fix this error, review your PHP script for syntax errors and correct them. Make sure to include semicolons at the end of each statement and use correct variable syntax.


3. Undefined Index: Notice

This notice occurs when you're trying to access an array key that doesn't exist.

Why It Happens

This error is often caused by using a non-existent array key or forgetting to check if the key exists before accessing it.

How to Fix It

To fix this notice, ensure that you're checking if the array key exists before accessing it. Use the `isset()` function to check if the key exists, and use the `array_key_exists()` function as an alternative.


4. Fatal Error: Call to undefined function

This error occurs when you're trying to call a function that doesn't exist.

Why It Happens

This error is often caused by missing function declarations or incorrect function names.

How to Fix It

To fix this error, ensure that the function you're trying to call exists and is properly declared. Check your function names and make sure they're correct. If you're using an autoloader, verify that it's loading the required functions.


5. Warning: Cannot modify header information - headers already sent

This warning occurs when you're trying to modify header information after output has already been sent to the browser.

Why It Happens

This warning is often caused by including or echoing output before the headers are sent, or using output buffering incorrectly.

How to Fix It

To fix this warning, ensure that output is not sent before the headers are sent. Use output buffering to delay output until the correct time, and avoid including or echoing output before the headers are sent.


6. Fatal Error: Call to a member function on null

This error occurs when you're trying to call a method on a null object.

Why It Happens

This error is often caused by accessing an object that hasn't been initialized or is null.

How to Fix It

To fix this error, ensure that the object you're trying to access is properly initialized and not null. Use the `isset()` function to check if the object exists before accessing it.


7. Notice: Undefined variable

This notice occurs when you're trying to access a variable that doesn't exist.

Why It Happens

This error is often caused by using a non-existent variable or forgetting to define the variable before using it.

How to Fix It

To fix this notice, ensure that the variable you're trying to access exists and is properly defined. Use the `isset()` function to check if the variable exists before accessing it.


8. Fatal Error: Maximum execution time exceeded

This error occurs when your PHP script takes too long to execute, exceeding the maximum execution time limit.

Why It Happens

This error is often caused by infinite loops, slow database queries, or resource-intensive operations.

How to Fix It

To fix this error, identify the cause of the slow execution time and optimize your script accordingly. Use techniques such as query optimization, caching, and loop optimization to reduce execution time.


9. Parse Error: Unexpected T_STRING

This error occurs when your PHP script contains a syntax error, such as a missing semicolon or incorrect variable syntax.

Why It Happens

This error is often caused by typos, missing semicolons, or incorrect variable syntax.

How to Fix It

To fix this error, review your PHP script for syntax errors and correct them. Make sure to include semicolons at the end of each statement and use correct variable syntax.


10. Warning: mysql extension is deprecated

This warning occurs when you're using the deprecated `mysql` extension in your PHP script.

Why It Happens

This warning is often caused by using the `mysql` extension instead of the recommended `mysqli` or `PDO` extensions.

How to Fix It

To fix this warning, replace the `mysql` extension with the recommended `mysqli` or `PDO` extensions. Update your code to use the new extensions and follow the recommended best practices for database interactions.


11. Fatal Error: Allowed memory size of XXX bytes exhausted

This error occurs when your PHP script exceeds the allowed memory size limit.

Why It Happens

This error is often caused by infinite loops, slow database queries, or resource-intensive operations.

How to Fix It

To fix this error, identify the cause of the memory exhaustion and optimize your script accordingly. Use techniques such as query optimization, caching, and loop optimization to reduce memory usage.

Conclusion

In this article, we've covered the top 20 PHP errors beginners make and provided actionable advice on how to fix them. By following these tips and best practices, you'll be able to troubleshoot common PHP errors and deliver high-quality code with confidence. Remember to always check for syntax errors, ensure that your code is well-structured, and use the recommended extensions and best practices for database interactions. Happy coding!

Explore More Debugging Resources

- [Browse all PHP errors](/languages/php)

- [Browse errors by type](/error-types)

- [Search all documented errors](/search)

- [Use the Error Explainer](/error-explainer-tool)

Browse allPhp errors

Related PHP Articles

Have a specific error? Get an instant explanation.

Explain an Error