zoukankan      html  css  js  c++  java
  • __invoke,try{}catch(){},microtime(),is_callable()

    <?php
    /*1.对象本身不能直接当函数用,如果被当做函数用,会直接回调__invoke方法
     * 2.验证变量的内容能否作为函数调用
     * 3.try{}catch(Exception $e){}catch(){}finally{}
     * 4.microtime()函数返回当前时间戳和微妙数
     * */
    class httpException extends Exception{
    
    }
    class Testcallable{
    	public function test(){
    		echo '我在测试';
    		echo '</br>';
    	}
    	public function __call($name,$arg)
    	{
    		if($name =='othertest')
    		{
    			call_user_func_array([$this,'test'],$arg);
    		}
    	}
    	public function __invoke() //对象本身不能直接当函数用,如果被当做函数用,会直接回调__invoke方法
    	{
    		echo '兄弟我是对象';
    		echo '</br>';
    		throw new Exception('掉错了');
    	}
    }
    $test = new Testcallable;
    echo $test->test();
    echo $test->othertest();//对象调用不存在的方法时,__call魔术方法会被调用
    echo '-----------<br>';
    echo is_callable([$test,'test']);//验证变量的内容能否作为函数调用
    echo is_callable([$test,'othertest'],false,$call);
    try{
        echo 44;
    	/*$test();*/
    }catch(httpException $e){
    	echo 'htpp'.$e->getMessage();
    }catch(Exception $e){
    	echo $e->getMessage();
    }finally{
        //程序又没有错误都会执行
    	echo '失败了';
    	echo '-----------<br>';
    }
    echo $shijian = microtime();
    

      

  • 相关阅读:
    算法
    nginx配置https
    IE中JS跳转丢失referer的问题
    js 调用字符串类型的 js语句
    移动端iOS中input聚焦不灵敏
    上传图片转换格式为base64并预览
    转:手机号脱敏
    转:Lodash之throttle(节流)与debounce(防抖)总结
    转:tinyMCE中图片的自定义上传
    chrome input 输入框去掉黄色
  • 原文地址:https://www.cnblogs.com/zxqblogrecord/p/10364480.html
Copyright © 2011-2022 走看看