머리말
OOP
저는 오랫동안 PHP를 공부해왔는데, PHP/정적 속성과 정적 메서드/유닛의 추상 클래스와 추상 메서드를 정리하겠습니다. PHP에서는 Advantage 모드(단형 모드)/직렬화 및 역직렬화(직렬화 및 역직렬화).
1 PHP의 추상 클래스 및 추상 메서드 |
1. 추상 메소드란 무엇인가요?
메소드 본문 {}이 없는 메소드는 abstract 키워드로 수정해야 합니다. 이러한 메소드를 추상 메소드라고 합니다. T 추상 함수 say(); // 추상 메서드
2. 추상 클래스란 무엇인가요?
추상 메소드를 포함하는 클래스를 추상 클래스라고 합니다. 추상 클래스는 abstract 키워드를 사용하여 수정해야 합니다. T ABSTRACT 클래스 Person {}
3. 추상 카테고리에 대한 주의사항 ① 추상 클래스는 비추상 메소드를 포함할 수 있습니다.
② 추상 메소드를 포함하는 클래스는 추상 클래스여야 합니다. ㅋㅋㅋ ’ ’ ’ 인스턴스화를 제한하세요! ! !
4. 하위 클래스가 추상 클래스를 상속하는 경우 하위 클래스는 상위 클래스의 모든 추상 메서드를 재정의해야 합니다. 서브클래스가 추상 클래스가 아닌 이상.象抽 5. 추상 클래스의 역할을 사용합니까?
① 인스턴스화를 제한합니다. (추상 클래스는 불완전한 클래스입니다. 내부의 추상 메소드에는 메소드 본체가 없으므로 인스턴스화할 수 없습니다.) ② 추상 클래스는 하위 클래스의 상속에 대한 사양을 제공합니다. 하위 클래스가 추상 클래스를 상속하는 경우 추상 클래스에 지정된 추상 메서드를 포함하고 구현해야 합니다.
1. static ① 속성과 메서드는 각각 정적 속성과 정적 메서드로 수정될 수 있으며, 클래스 속성과 클래스 메서드라고도 합니다. ② 정적 속성과 정적 메서드는 클래스 이름을 사용하여 직접 호출할 수 있습니다. "클래스 이름:: $ 정적 속성", "클래스 이름: 정적 메서드()" person :: $ sex: say(); 객체 이전에 생성됨 ④ 정적 메서드에서는 비정적 속성이나 메서드를 호출할 수 없습니다. . 속성 메서드, 아직 인스턴스화가 생성되지 않음) ⑤ 클래스에서는 self 키워드를 사용하여 클래스를 참조할 수 있습니다. 이름. Er Class Person { Static $ Sex = "Nan"; Function say() { echo Self :: $ sex }} ⑥ Static 속성은 공유됩니다. 즉, 많은 새로운 객체도 동일한 속성을 공유합니다. 2. final ① 최종 수정 클래스, 이 클래스는 최종 클래스이므로 상속할 수 없습니다. ② 최종 수정 메서드, 이 메서드는 최종 메서드이므로 재정의할 수 없습니다. ③ final은 속성을 수정할 수 없습니다. ㅋㅋㅋ (Define() 문과 유사하게 const의 const 키워드 선언은 $와 함께 가져올 수 없으며 모두 대문자입니다! 상수는 한번 선언되면 변경할 수 없습니다. 호출할 때는 클래스 이름 Person::constant를 사용하여 static과 동일합니다. ㅋㅋㅋ ] 3. -> 객체($this new로 생성된 객체)는 멤버 속성과 멤버 메서드를 사용합니다. 4. : : ① parent 키워드를 사용하여 상위 클래스에서 동일한 이름의 메서드를 호출합니다. parent::say(); ② 클래스 이름(및 self)을 사용하여 정적 속성, 정적 메서드 및 클래스의 상수. ㅋㅋㅋ ~ 심플렉스 모드는 단일형 모드라고도 합니다 클래스는 하나의 객체 인스턴스만 가질 수 있음을 보장할 수 있습니다. ㅋㅋㅋ ② 객체를 얻기 위한 외부 방법을 제공합니다. 메소드에서 객체가 비어 있는지 확인하고, 비어 있으면 객체를 생성하여 반환하고, 비어 있지 않으면 직접 다시 넣습니다. ③ 인스턴스 객체의 속성과 과거 객체의 메소드가 일치해야 합니다. 공전. ④ 이후에는 우리가 제공하는 정적 메소드만을 사용하여 객체를 생성할 수 있습니다. $s1 = Singleton::getSingle(); 1 class Singleton{ 2 private static $single=null; 3 private function __construct(){} 4 static function getSingle(){ 5 if(!self::$single){ 6 self::$single = new self(); 7 } 8 return self::$single; 9 }10 function __destruct(){11 echo "啊,我被销毁了。";12 }13 }14 15 $s1 = Singleton::getSingle();16 $s2 = Singleton::getSingle();17 $s3 = Singleton::getSingle();18 $s4 = Singleton::getSingle(); ![]() ![]()
9. __clone(): clone 키워드를 사용하여 객체를 복제할 때 자동으로 호출됩니다. 새로 복제된 객체를 초기화하고 복사하는 함수입니다.
10. __sleep(): 객체가 직렬화되면 자동으로 호출됩니다. 값이 직렬화 가능한 속성인 배열을 반환합니다. 11. __wakeup(): 객체가 역직렬화되면 자동으로 호출됩니다. 새로 생성된 객체를 역직렬화하려면 초기화하고 복사하세요. 12. __autoload(): 함수는 클래스 외부에서 선언되어야 합니다. 라이브 클래스를 인스턴스화할 때 자동으로 호출됩니다. 인스턴스화된 클래스 이름을 전달하면 해당 클래스 파일이 클래스 이름을 사용하여 자동으로 로드될 수 있습니다. 공부할 때 잘못된 부분이 있을 수 있으며, 비판은 환영합니다. 매일 조금씩 반성하고 복습하고 얻어가세요--------- 더 나은 자신을 기대합니다 |
위 내용은 PHP에서 일반적으로 사용되는 몇 가지 방법에 대한 지식 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

方法:1、用“str_replace(" ","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\ \;||\xc2\xa0)/","其他字符",$str)”语句。

php判断有没有小数点的方法:1、使用“strpos(数字字符串,'.')”语法,如果返回小数点在字符串中第一次出现的位置,则有小数点;2、使用“strrpos(数字字符串,'.')”语句,如果返回小数点在字符串中最后一次出现的位置,则有。

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

PhpStorm 맥 버전
최신(2018.2.1) 전문 PHP 통합 개발 도구

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.
