What are the error types in php

藏色散人
Release: 2023-03-04 19:58:01
Original
3539 people have browsed it

The error types in php are: 1. Errors in the program itself; 2. Undefined symbols; 3. Differences caused by the operating system; 4. PHP configuration differences; 5. SAPI differences; 6. Run Error; 7. PHP error; 8. Define error handler.

What are the error types in php

Recommended: "PHP Video Tutorial"

Error Types of PHP

1. Errors in the program itself

This kind of error is an error that is relatively easy to deal with, such as a syntax error or the compiler cannot parse it. These errors will not pass the compilation during compilation. , and then you can find the specific error code according to the error prompt. But when an error occurs in the code executed using eval(), it cannot be found during compilation. It can only wait until the code is executed and an error occurs in its compilation. If we execute the following code, it will appear during the execution process. Error:

<?php 
   echo "this will be echo to putty";
   eval("php error when parser");
 
?>
Copy after login

This error is different from other code errors in that the echo before it can be output. There will be no output for other code errors, because the compilation will not pass and will not run.

2. Undefined symbols

When PHP is executed, it may encounter many variables, functions and other names that it does not know, because PHP does not have a complete understanding of it when compiling. All symbol names, function names, etc.

If it is just an undefined constant or variable, this is just a notification. But if an undefined function or class is encountered, the program will terminate. Regarding the class not found, if the user defines a function called __autoload, it will be called when PHP encounters an undefined class. If the class can be returned through this function, the newly loaded class will be used. No errors are generated.

3. Universal errors

3.1 Differences caused by operating systems

Some PHP functions are only available on a special platform.

Some PHP functions that are not available on a particular platform.

Some PHP functions that have subtle differences on different platforms.

Characters that distinguish path components in file names.

External programs or services are not available on all platforms.

3.2 PHP configuration differences

For example, the configuration option magic_quotes_gpc, if this option is turned on, PHP will add slashes to all external data. At this time, if the program is transplanted to another server without this option turned on, there will be problems with user input. The way to deal with similar differences is to check the PHP code and see whether the option is enabled through the ini_get() function, and then make a unified adjustment.

register_globals: This setting determines whether PHP introduces GET, POST, cookies, environment variables or server variables as global variables. Generally avoided.

allow_url_fopen: If this option is set to false, the function of operating URL files is turned off.

3.3 SAPI differences

4. Operation errors

For example, errors caused by factors other than PHP itself when making hard disk data or network operations and database calls.

5. PHP Error

The error mechanism in PHP is used by all PHP built-in functions. Usually this simple mechanism prints out an error message, including some basic error-related information.

Error levels are divided into:

E_ERROR:严重错误。
E_WARNING:最普通的错误类型。
E_PARSE:解析错误在编译的时候发生。
E_STRICT:这个错误级别是唯一不包含在E_ALL常量中的,为了让PHP4到PHP5的迁移更加容易。
E_NOTICE:表示运行的代码可能在操作一些未知的事情。
E_CORE_ERROR:由于扩展启动失败等导致的。
E_COMPILE_WARNING:编译的时候出现的警告,告诉用户一些不推荐使用的语法信息。
E_COMPILE_ERROR:编译错误。
E_USER_ERROR
E_USER_WARNING
可以用error_reporting(Integer)函数来设置哪些错误被报告。如所有的错误,表示为E_ALL ,除了通告以外的所有错误,可以表示为E_ALL & ~E_NOTICE.
display_errors(boolean):这个设置控制错误是否作为PHP输出的一部分显示出来。
log_errors(boolean),这个设置控制错误是否记录。日志的地址是通过error_log(String)设置决定的。默认情况下,错误被记录到WEB服务器的错误日志中。
html_errors(boolean):设置控制是否在错误信息中采用HTML格式 。
Copy after login

Six, define error handler

You can call set_error_handler(error_handle_function,error_types) to specify the error handler. Such as

function customError($errno, $errstr, $errfile, $errline)
 { 
 echo "<b>Custom error:</b> [$errno] $errstr<br />";
 }
set_error_handler("customError"); // 默认为所有的错误,就是E_ALL.
Copy after login

The above is the detailed content of What are the error types in php. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
php
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 admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template