`
再逢山水
  • 浏览: 156348 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

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

    博客分类:
  • LAMP
阅读更多
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();
分享到:
评论

相关推荐

    phpmailer.rar 适用于php5.3 亲测有效

    (积分会自动改,需要的留言)phpemail 适用php5.3版本,目前github上的phpemail对于5.3好像有不少问题。 实例(含代码):https://blog.csdn.net/github_38854224/article/details/91490084

    ACS 5.3 license亲测可用

    7. **故障排查**:若遇到“license亲测可用”的问题,应检查ACS的日志,找出可能的错误提示。常见问题包括许可证文件损坏、许可证版本与软件版本不匹配等。 8. **安全最佳实践**:确保许可证文件的安全,避免未经...

    PHP5.3新特性

    PHP5.3是PHP编程语言的一个重要版本更新,它在2009年发布,带来了多项新特性和改进。以下是根据文件提供的信息,对PHP5.3新特性知识点的详细总结: 1. 命名空间的引入 命名空间是PHP5.3中最大的一个新增功能。它为...

    php5.3 64位WampServer

    总的来说,"php5.3 64位WampServer"是开发人员在Windows环境中进行PHP开发的理想工具,尤其是对于那些依赖于PHP 5.3特性的项目。它的集成环境使得本地开发和测试变得更加便捷,而64位版本则确保了高效的数据处理能力...

    php5.3php_curl

    标题“php5.3php_curl”提示我们关注的是PHP 5.3版本的一个特定功能模块,即PHP的cURL扩展。cURL是用于在PHP中处理URLs的库,它允许开发人员通过各种协议(如HTTP、HTTPS、FTP、FTPS等)传输数据。在PHP 5.3中,cURL...

    PHP5.3最新版本

    PHP5.3是PHP语言的一个重要版本,发布于2010年,它引入了许多新特性和改进,为开发者提供了更强大的工具和更高的性能。在这个版本中,PHP进行了许多内部优化,增强了其在Web开发中的功能,特别是对于大型应用程序的...

    php_imagick扩展 php 5.3

    《PHP Imagick扩展在PHP 5.3环境下的应用与详解》 PHP Imagick扩展是PHP语言中用于处理图像的强大工具,它提供了对ImageMagick库的接口,使得开发者能够执行复杂的图像操作,如图像的读取、写入、转换、编辑以及...

    php5.3的memcache

    PHP5.3是PHP的一个重要版本,引入了新的特性并修复了一些问题。由于PHP5.3是非线程安全的,因此在选择Memcache扩展时,需要使用与之匹配的非线程安全版本。描述中提到“好些都是单独版本”,这意味着针对特定PHP...

    PHP_5.3_与_PHP_5.2_开发区别和新特性

    PHP 5.3 版本相对于 PHP 5.2 带来了许多重大改进和新特性,这使得 PHP 更加强大且现代化。以下是对这些变化的详细解释: 1. **名称空间(Namespaces)**: 名称空间是 PHP 5.3 引入的关键特性之一,它解决了在大型...

    php_solr.dll ,php5.3版本

    **PHP Solr 扩展与 PHP 5.3 版本** PHP Solr 扩展是一种用于在 PHP 应用程序中与 Apache Solr 搜索服务器进行交互的库。Apache Solr 是一个开源的企业级搜索平台,它允许快速、可扩展的全文检索,以及丰富的搜索...

    php5.3-php5.4mongo扩展

    《PHP 5.3到5.4版本Mongo扩展详解及安装指南》 MongoDB是一款流行的开源、高性能、无模式的文档型数据库,广泛应用于大数据处理和分布式存储。PHP作为常用的服务器端脚本语言,与MongoDB的结合为开发者提供了强大的...

    php5.3安装包(LINUX)

    PHP 5.3是PHP语言的一个重要版本,它在2010年发布,引入了许多新特性、性能优化以及安全改进。在Linux环境下安装PHP 5.3是为服务器配置Web开发环境的关键步骤。以下是对PHP 5.3在Linux系统安装过程中的详细解释和...

    php_mongo.dll php5.3 vc6

    标题中的"php_mongo.dll php5.3 vc6"指的是PHP的一个扩展模块,用于连接和操作MongoDB数据库。这个特定的版本是为PHP 5.3编译的,并且使用了Visual C++ 6 (VC6)作为编译器。在PHP环境中,扩展通常以动态链接库(DLL...

    PHP 5.3入门经典(所有的源码)

    在PHP 5.3版本中,引入了一些重要的新特性,这些特性对于提升开发效率和代码质量起到了关键作用。首先,让我们了解一下这个版本中的主要改进: 1. **命名空间(Namespaces)**:这是PHP 5.3引入的一个重要特性,...

    兼容到php5.3以上(php5.6,php7)的Smtp类

    标题提到的"兼容到php5.3以上(php5.6,php7)的Smtp类"正是为了解决这个问题。在PHP 5.3及以上版本中,有一些函数发生了变化或被废弃,导致基于早期版本PHP编写的SMTP类无法正常工作。描述中提到的"email.class....

    php5.3与apache2.2.15

    标题 "php5.3与apache2.2.15" 提到的是两个关键组件:PHP 5.3和Apache HTTP Server 2.2.15,它们是搭建Web服务器环境时常用的开源软件。PHP是一种广泛使用的服务器端脚本语言,主要用于开发动态网页应用,而Apache则...

    PHP.zip_php5.3_php5.3 chm

    PHP 5.3是PHP的一个重要版本,它引入了许多新特性、改进和优化,使得开发者能够编写出更高效、更安全的代码。 ### 1. 函数作用域和闭包 在PHP 5.3中,引入了新的变量作用域规则,特别是对匿名函数(也称为闭包)的...

    PHP5.3安装版

    php5.3安装版,win32位,线程安全

    PHP 5.3新特性.pdf

    PHP 5.3新特性.pdf

    PHP5.3.2011中文帮助文档手册

    PHP5.3版本是PHP的一个重要里程碑,它引入了许多新特性、改进和优化,以提升性能和开发效率。2011年的修订版中文帮助文档手册为中文开发者提供了详尽的指导,帮助他们理解和利用PHP5.3的新功能。 **主要特性与更新*...

Global site tag (gtag.js) - Google Analytics