Home Backend Development PHP Tutorial php异常调试和错误处理

php异常调试和错误处理

Jun 13, 2016 pm 12:53 PM
class function php

php错误调试和异常处理

?

1、Php面向对象

php4版本开始引入了面向对象的概念,Php并不是完全面向对象的编程语言,只是引入了面向对象的思想。但php可以把相关方法放入到一个类中,也实现了在参数传递中传递对象的功能。Php5更完整的支持了面向对象。所以Php是面向过程的,也是面向对象的。

1.1、???? 定义类、属性和方法:

当定一个PHP类的时候,必须使用关键字“class””var”来声明变量。

class classname

{???????????? }

Class classname

{

var $variable1;

var $variable2;

……

}

Class classname

{

var $variable1;

var $variable2;

function func1()

{??? }

Function func2($param1,param2)

{??? }

}

1.2、???? 类的使用:

1)、类的实例化:使用关键字“new”来创建一个类实例。

$objectname = new classname();

$objectname = new classname(“a”);

2)、类属性的使用:访问类成员变量有一个特殊的指针――$this

$objectname = new classname();

$objectname -> variable = ‘属性’;

echo $objectname -> variable;

3)、类方法的调用:

$objectname = new classname();

$objectname -> func1(“a”);

$value = $objectname -> func2 (“1”,”2”); //定义变量接受返回值

1.3、???? 构造函数、析构函数:

1)、构造函数:

class classname

{

function _construct ($param)

{

????????????? //代码

}

}

2)、析构函数:

与构造函数相对应的是析构函数,它是PHP5新增加的内容。析构函数是一种当象被销毁时,无使用了unset()或者简单的脱离范围,都会被自动调用的函数。

一个的析构函数名称必_destruct();析构函数不能带任何参数;

1.4、???? 类的访问控制:

1)public 表示全局,内部外部子都可以访问。默认修饰符。

2)private表示私有的,只有本内部可以使

3)protected表示受保的,只有本或子或父中可以访问

1.5、???? 继承和接口的实现:

1)、继承。如果类是另一个类的子类,可以用关键字“extends”来指明其继承系。

2)、接口。PHP5引入了接口,接口可以看做是多重继承问题的解决方法,对象就可以方便地使用“implements”

????????????? interface name1{

??????????????????????????? function func1();

????????????? }

????????????? interface name2{

??????????????????????????? function func2();

????????????? }

????????????? class classname implements name1,name2{

??????????????????????????? function func1() {

????????????????????????????????????????? //函数代码

??????????????????????????? }

??????????????????????????? function func2() {

????????????????????????????????????????? //函数代码

??????????????????????????? }

????????????? }????????????

?>

1.6、???? 多态的实现:

象的一能力,它可以在运行刻根据传递象参数,动态地决定用一个象的方法。

class shap

{

function area($x)

{

????? return $x;

}

}

class rectangle extends shap

{

function area($x,$y);

{

????? return $x*$y;

}

}

class circle extends shap

{

function area($x)

{

????? return 3.14*$x*$x;

}

}

$a = new shap();

echo “图形的边长是:”.$a->area(“5”).”
”;

$c = new rectangle();

echo “矩形的面积是:”.$c->area(“3”,”5”).”
”;

$b = new circle();

echo “圆形的面积是:”.$b->area(“3”).”
”;

1.7、???? 作用域分辨运算符:

“::” 作用域分辨运算符可以在没有声明任何实例的情况下访问类中的函数或者基中的方法和属性。

class A {

function func1{

}

}

A::func1();

1.8、???? parent关键字:

用于访问的属性和方法。

1.9、???? final关键字:

当在一个函数声明前面使用该关键个函数将不能被任何

1.10、? static关键字:

用于允许在未经初始化类的情况下调用类的属性和方法。

class classname{

????????????? static function add($param1,$param2) {

??????????????????????????? return $param1+$param2;

????????????? }

}

echo classname :: add (3,5);

注意:在一个静态方法中,不能使用“this”关键字,因为可能会没有可以引用的对象实例。

示例:0401.php0402.php0403.php

?

2、Php错误调试和异常处理

2.1、异常处理:

try

{

????????????? //错误出现的地方

}

2.2、抛出异常:

thorw new Exception(‘message’,code);

2.3、捕获异常:

try

???????? {

????????????? ????????????? throw new Exception (‘a terrible error has occurred’,42);

???????? }

???????? catch (exception $e)

???????? {

????????????? ????????????? echo ‘exception’ .$e->getcode() ‘:’ $e -> getmessage()

???????? }

?>

2.4、错误报告:

文件php.ini中:

display_errors = off

error_reporting = E_ALL

?

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

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
1 months ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
1 months ago By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Have Crossplay?
1 months ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

How To Set Up Visual Studio Code (VS Code) for PHP Development How To Set Up Visual Studio Code (VS Code) for PHP Development Dec 20, 2024 am 11:31 AM

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c

7 PHP Functions I Regret I Didn't Know Before 7 PHP Functions I Regret I Didn't Know Before Nov 13, 2024 am 09:42 AM

If you are an experienced PHP developer, you might have the feeling that you’ve been there and done that already.You have developed a significant number of applications, debugged millions of lines of code, and tweaked a bunch of scripts to achieve op

How do you parse and process HTML/XML in PHP? How do you parse and process HTML/XML in PHP? Feb 07, 2025 am 11:57 AM

This tutorial demonstrates how to efficiently process XML documents using PHP. XML (eXtensible Markup Language) is a versatile text-based markup language designed for both human readability and machine parsing. It's commonly used for data storage an

Explain JSON Web Tokens (JWT) and their use case in PHP APIs. Explain JSON Web Tokens (JWT) and their use case in PHP APIs. Apr 05, 2025 am 12:04 AM

JWT is an open standard based on JSON, used to securely transmit information between parties, mainly for identity authentication and information exchange. 1. JWT consists of three parts: Header, Payload and Signature. 2. The working principle of JWT includes three steps: generating JWT, verifying JWT and parsing Payload. 3. When using JWT for authentication in PHP, JWT can be generated and verified, and user role and permission information can be included in advanced usage. 4. Common errors include signature verification failure, token expiration, and payload oversized. Debugging skills include using debugging tools and logging. 5. Performance optimization and best practices include using appropriate signature algorithms, setting validity periods reasonably,

PHP Program to Count Vowels in a String PHP Program to Count Vowels in a String Feb 07, 2025 pm 12:12 PM

A string is a sequence of characters, including letters, numbers, and symbols. This tutorial will learn how to calculate the number of vowels in a given string in PHP using different methods. The vowels in English are a, e, i, o, u, and they can be uppercase or lowercase. What is a vowel? Vowels are alphabetic characters that represent a specific pronunciation. There are five vowels in English, including uppercase and lowercase: a, e, i, o, u Example 1 Input: String = "Tutorialspoint" Output: 6 explain The vowels in the string "Tutorialspoint" are u, o, i, a, o, i. There are 6 yuan in total

Explain late static binding in PHP (static::). Explain late static binding in PHP (static::). Apr 03, 2025 am 12:04 AM

Static binding (static::) implements late static binding (LSB) in PHP, allowing calling classes to be referenced in static contexts rather than defining classes. 1) The parsing process is performed at runtime, 2) Look up the call class in the inheritance relationship, 3) It may bring performance overhead.

What are PHP magic methods (__construct, __destruct, __call, __get, __set, etc.) and provide use cases? What are PHP magic methods (__construct, __destruct, __call, __get, __set, etc.) and provide use cases? Apr 03, 2025 am 12:03 AM

What are the magic methods of PHP? PHP's magic methods include: 1.\_\_construct, used to initialize objects; 2.\_\_destruct, used to clean up resources; 3.\_\_call, handle non-existent method calls; 4.\_\_get, implement dynamic attribute access; 5.\_\_set, implement dynamic attribute settings. These methods are automatically called in certain situations, improving code flexibility and efficiency.

See all articles