백엔드 개발 PHP 튜토리얼 【转】PHP5.3亲测精髓特性整理

【转】PHP5.3亲测精髓特性整理

Jun 13, 2016 pm 01:07 PM
class echo function namespace static

【转】PHP5.3亲测精华特性整理
1、引入 __DIR__ magic常量 定位脚本的目录

    echo __DIR__."|".dirname(__FILE__);
로그인 후 복사


2、允许从2个值的or/and表达式快速的获取一个非空的值

    echo (1 ?: 0) ."|". ("" ?: 0)."|". var_export(array() ?: array(1), true);
로그인 후 복사


3、类添加__callStatic方法,等价于 __call(),但它是为调用静态方法准备的。下面来看示例:

    class xxx{ 
        function __call($func, $args){ 
            echo "function name:".$func; 
            echo "</br />"; 
            echo "args:".var_export($args, true); 
        } 
        static function __callStatic($func, $args){ 
            echo "static function name:".$func; 
            echo "</br />"; 
            echo "static args:".var_export($args, true); 
        } 
    } 
    $x = new xxx(); 
    $x->testfunc("oo"); 
    echo "</br />"; 
    xxx::teststatic("xx");
로그인 후 복사


4、动态的调用静态的方法

 
   class xx{ 
        static function test(){ 
            echo __METHOD__; 
        } 
    } 
    $c = "xx"; 
    $m = "test"; 
    $c::$m();
로그인 후 복사


5、延迟静态绑定(静态处理从编译时延迟到执行时)

class A{ 
    static function whoami(){ 
        echo __CLASS__; 
    } 
 
    static function say1(){ 
        self::whoami(); 
    } 
 
    static function say2(){ 
        static::whoami(); 
    } 
} 
 
class B extends A{ 
    static function whoami(){ 
        echo __CLASS__; 
    } 
} 
 
class C extends A{ 
    static function whoami(){ 
        echo __CLASS__; 
    } 
} 
 
B::say1(); 
C::say2();
로그인 후 복사


6、MySQLInd (高速的专门为PHP设计的MySQL调用库接口)
7、INI Magic
8、扩展的 OpenSSL 函数
9、SPL(Standard PHP Library) 优化
10、时间处理进行扩展了和添加

    
    $date = strtotime("11-05-17 00:00:00"); 
    echo date("Y-m-d", $date)."|"; 
 
    $date = date_create_from_format("y-m-d", "11-05-17"); 
    echo $date->format("Y-m-d");
로그인 후 복사


11、垃圾回收器(为复杂和长时间运行脚本的执行结束周期释放内存的清理)

     
   gc_enable(); // 允许垃圾回收 
    var_dump(gc_enabled()); // true 
 
    var_dump(gc_collect_cycles()); // 某个元素的清理 
 
    gc_disable(); // 禁止垃圾回收
로그인 후 복사


12、NOWDOC(不对HEREDOC进行转译)

    $fubar = "xxx"; 
 
    $xbar = <<<ONE 
        this is HEREDOC $fubar 
    ONE; 
 
    $abar = <<<'TWO' 
        this is NOWDOC $fubar 
    TWO; 
    echo $xbar."|".$abar;
로그인 후 복사


13、匿名函数体验

    $ofun = create_function('$a, $b', 'return $a*$b;'); //不要忘了分号,传统方法 
    echo $ofun(2, 5); 
 
    $nfun = function ($a, $b){ 
        return $a*$b; 
    };//不要忘了分号,现代方法 
 
    echo $nfun(3, 5);
로그인 후 복사


14、闭包体验

    $arr = array(1, 2, 3, 5, 6, 7); 
    $res = array_filter($arr, function($v) { return $v >4; }); 
    var_dump($res); 
 
    function countnum(){ 
        $num = 0; 
        $testt = function() use(&$num){ 
            ++$num; 
            echo $num; 
        }; 
        return $testt; 
    } 
 
    $t = countnum(); 
    $t(); 
    $t();
로그인 후 복사


15、命名空间

    namespace xxx; //第一个namespace需要在所有输出之前 
    function t(){ 
        return __NAMESPACE__; 
    } 
 
    namespace xxx; 
 
    function t(){ 
        return __NAMESPACE__; 
    } 
 
    echo \xx\t()."|"; 
    echo \xxx\t();
로그인 후 복사

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

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

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

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

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Python에서 클래스와 메서드를 사용하는 방법 Python에서 클래스와 메서드를 사용하는 방법 Apr 21, 2023 pm 02:28 PM

클래스와 메소드의 개념과 인스턴스 클래스(Class): 동일한 속성과 메소드를 가진 객체의 컬렉션을 설명하는 데 사용됩니다. 컬렉션의 모든 개체에 공통적인 속성과 메서드를 정의합니다. 객체는 클래스의 인스턴스입니다. 메소드: 클래스에 정의된 함수입니다. 클래스 구성 메서드 __init__(): 클래스에는 클래스가 인스턴스화될 때 자동으로 호출되는 init()라는 특수 메서드(구성 메서드)가 있습니다. 인스턴스 변수: 클래스 선언에서 속성은 변수로 표시됩니다. 이러한 변수를 인스턴스 변수라고 합니다. 인스턴스화: 클래스의 특정 개체인 클래스의 인스턴스를 만듭니다. 상속: 즉, 파생 클래스(derivedclass)가 기본 클래스(baseclass)를 상속합니다.

기능은 무슨 뜻인가요? 기능은 무슨 뜻인가요? Aug 04, 2023 am 10:33 AM

함수는 특정 기능을 포함하는 재사용 가능한 코드 블록으로, 입력 매개변수를 받아들이고 특정 작업을 수행하며 결과를 반환하는 것이 목적입니다. 코드 재사용성과 유지 관리성을 향상시키는 코드입니다.

파이썬에서 클래스는 무엇을 의미합니까? 파이썬에서 클래스는 무엇을 의미합니까? May 21, 2019 pm 05:10 PM

클래스는 클래스를 정의하는 데 사용되는 키워드입니다. 클래스 뒤에 공백을 추가하고 클래스 이름을 추가합니다. 규칙: 첫 글자가 여러 개인 경우 카멜 표기법을 사용합니다. [class Dog()]와 같은 이름 지정.

기술 세계를 탐험할 수 있도록 Go 언어 오픈 소스 프로젝트 5개를 선택했습니다. 기술 세계를 탐험할 수 있도록 Go 언어 오픈 소스 프로젝트 5개를 선택했습니다. Jan 30, 2024 am 09:08 AM

오늘날 급속한 기술 발전의 시대에 프로그래밍 언어는 비가 내린 뒤 버섯처럼 솟아오르고 있습니다. 많은 주목을 받고 있는 언어 중 하나가 바로 Go 언어인데, 단순성, 효율성, 동시성 안전성 등 다양한 기능으로 많은 개발자들에게 사랑을 받고 있습니다. Go 언어는 뛰어난 오픈 소스 프로젝트가 많이 포함된 강력한 생태계로 유명합니다. 이 기사에서는 선택된 Go 언어 오픈 소스 프로젝트 5개를 소개하고 독자가 Go 언어 오픈 소스 프로젝트의 세계를 탐색하도록 안내합니다. KubernetesKubernetes는 자동화를 위한 오픈 소스 컨테이너 오케스트레이션 엔진입니다.

jQuery를 사용하여 요소의 클래스 이름 바꾸기 jQuery를 사용하여 요소의 클래스 이름 바꾸기 Feb 24, 2024 pm 11:03 PM

jQuery는 웹 개발에 널리 사용되는 클래식 JavaScript 라이브러리로, 이벤트 처리, DOM 요소 조작, 웹 페이지에서 애니메이션 수행과 같은 작업을 단순화합니다. jQuery를 사용할 때 요소의 클래스 이름을 바꿔야 하는 상황이 자주 발생합니다. 이 기사에서는 몇 가지 실용적인 방법과 구체적인 코드 예제를 소개합니다. 1. RemoveClass() 및 addClass() 메소드 사용 jQuery는 삭제를 위한 RemoveClass() 메소드를 제공합니다.

Go 언어 개발 필수 사항: 인기 있는 프레임워크 권장 사항 5가지 Go 언어 개발 필수 사항: 인기 있는 프레임워크 권장 사항 5가지 Mar 24, 2024 pm 01:15 PM

"Go 언어 개발 필수 사항: 5가지 인기 프레임워크 권장 사항" 빠르고 효율적인 프로그래밍 언어인 Go 언어는 점점 더 많은 개발자들이 선호하고 있습니다. 개발 효율성을 높이고 코드 구조를 최적화하기 위해 많은 개발자는 프레임워크를 사용하여 애플리케이션을 빠르게 구축하는 방법을 선택합니다. Go 언어의 세계에는 선택할 수 있는 훌륭한 프레임워크가 많이 있습니다. 이 기사에서는 인기 있는 Go 언어 프레임워크 5개를 소개하고 독자가 이러한 프레임워크를 더 잘 이해하고 사용할 수 있도록 구체적인 코드 예제를 제공합니다. 1.GinGin은 빠른 속도를 갖춘 경량 웹 프레임워크입니다.

PHP 클래스 사용법에 대한 자세한 설명: 코드를 더 명확하고 읽기 쉽게 만듭니다. PHP 클래스 사용법에 대한 자세한 설명: 코드를 더 명확하고 읽기 쉽게 만듭니다. Mar 10, 2024 pm 12:03 PM

PHP 코드를 작성할 때 클래스를 사용하는 것은 매우 일반적인 관행입니다. 클래스를 사용하면 관련 함수와 데이터를 단일 단위로 캡슐화하여 코드를 더 명확하고, 읽기 쉽고, 유지 관리하기 쉽게 만들 수 있습니다. 이 기사에서는 PHPClass의 사용법을 자세히 소개하고 구체적인 코드 예제를 제공하여 독자가 실제 프로젝트에 클래스를 적용하여 코드를 최적화하는 방법을 더 잘 이해할 수 있도록 돕습니다. 1. 클래스 생성 및 사용 PHP에서는 클래스 키워드를 사용하여 클래스를 정의하고 클래스의 속성과 메서드를 정의할 수 있습니다.

Vue 오류: v-bind를 사용하여 클래스와 스타일을 올바르게 바인딩할 수 없습니다. 어떻게 해결합니까? Vue 오류: v-bind를 사용하여 클래스와 스타일을 올바르게 바인딩할 수 없습니다. 어떻게 해결합니까? Aug 26, 2023 pm 10:58 PM

Vue 오류: v-bind를 사용하여 클래스와 스타일을 올바르게 바인딩할 수 없습니다. 어떻게 해결합니까? Vue 개발에서는 클래스와 스타일을 동적으로 바인딩하기 위해 v-bind 지시문을 사용하는 경우가 많지만, 클래스와 스타일을 바인딩하기 위해 v-bind를 올바르게 사용하지 못하는 등의 문제가 발생할 수도 있습니다. 이번 글에서는 이 문제의 원인을 설명하고 해결 방법을 알려드리겠습니다. 먼저 v-bind 지시어를 이해해 봅시다. v-bind는 V를 바인딩하는 데 사용됩니다.

See all articles