How to debug php

王林
Release: 2023-02-24 19:06:01
Original
7229 people have browsed it

How to debug php

How to debug a PHP program?

1. Check whether there are syntax errors

php -l test.php
Copy after login

2. Basic debugging

Basic debugging API:

var_dump($var);print_r($var);echo $var;
Copy after login

Basic configuration:

display_errors、log_errors、error_reporting、error_log
Copy after login

Note: Sometimes, error reporting will be turned off , needs to be turned on manually.

Commonly used codes:

ini_set("display_errors","On");
error_reporting(E_ALL);
Copy after login

3. Use the error collection function

debug_backtrace —Generate a backtrace ( backtrace)

debug_print_backtrace — Print a backtrace.

error_clear_last — Clear the latest error

error_get_last — Get the last error that occurred

error_log — Send error information to somewhere

error_reporting — Set what kind of PHP errors should be reported

restore_error_handler — Restore the previous error handling function

restore_exception_handler — Restore the previously defined exception handling function.

set_error_handler — Set a user-defined error handling function

set_exception_handler — Set a user-defined exception handling function

trigger_error — Generates a user-level error/warning/notice message

user_error — Alias ​​for trigger_error

register_shutdown_function('my_shutdown_handler');

function my_shutdown_handler()
{
    $error = error_get_last();
    if ($error) {
        try{
            //发送邮件
        } catch(Exception $e) {

        }
    }
    return false;
}
Copy after login

4. Remember log

file_put_contents('log.text', var_export($var, 1), FILE_APPEND);
Copy after login

In addition, you also need to configure error_log

Generally, check the error log of apache. Command line execution errors cannot be collected.

5. Use xdebug tool

xdebug_start_trace();
/* 业务代码 */
xdebug_stop_trace();
Copy after login

Recommended tutorial: PHP video tutorial

The above is the detailed content of How to debug php. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact [email protected]
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!