首页后端开发PHPphp中的declare用法是什么?一文带你看懂

php中的declare用法是什么?一文带你看懂

时间2024-03-26 18:20:03发布访客分类PHP浏览1065
导读:这篇文章给大家分享的是php中的declare用法,小编觉得挺实用的,因此分享给大家做个参考,文中示例代码介绍的非常详细,感兴趣的朋友接下来一起跟随小编看看吧。定义 php中的declare结构用来设定一段代码的执行指令 declare用于...

这篇文章给大家分享的是php中的declare用法,小编觉得挺实用的,因此分享给大家做个参考,文中示例代码介绍的非常详细,感兴趣的朋友接下来一起跟随小编看看吧。

定义

php中的declare结构用来设定一段代码的执行指令

declare用于执行3个指令:ticks,encoding,strict_types

作用域

declare结构用于全局范围,影响到其后的所有代码
(但如果有declare结构的文件被其他文件包含,则对包含他的父文件不起作用)

1.ticks

declare(ticks=1) {
//代码
}
||
declare(ticks=1);
两者相等

//作用:
//解释器每执行N条可计时的低级语句就会发生的时间 declare(directive=N) Tick(时钟周期)
//1.每执行一条语句就执行一次register_tisk_function()注册的函数
declare(ticks=1);
    
$time_start = time();
    
echo "hello";

function check_timeout(){
    
    global $time_start;
    
    $timeout=5;
    
    if (time() - $time_start >
 $timeout){

        exit("超时{
$timeout}
    秒\n");

    }

}
    
register_tick_function('check_timeout');
    
$i=0;

while (1){
    
//    echo $i++;
    
    $num =1;

}

//2.每执行一次低级语句会检查一次该进程是否有未处理过的信号
pcntl_signal(SIGINT,function (){
    
    exit("Get signal SIGINT and exit\n");

}
    );
    
echo "Ctrl+C or run cmd:kill -SIGINT".posix_getpid()."\n";

while (1){
    
//    echo "hello world";
    
    $num = 1;

}
    

2.Encoding

可以使用encoding指令来对每段脚本指定其编码方式

declare(encoding='cp936');
      //必须在文件代码第一行

3.strict_types

开启严格模式.默认是弱类型校验.

declare(strict_types=1);

以下内容转自:https://www.cnblogs.com/kudosharry/p/3795356.html

php里的declare用法

function tick_handler ()		
{
    			
echo  "tick_handler() calledbr>
    " ;
		
}
		 
function  tick_handler1 ()		
{
    			
echo  "tick_handler1() calledbr>
    " ;
		
}
    
 register_tick_function ( 'tick_handler' );
    		
 register_tick_function ( 'tick_handler1' );

declare( ticks = 1 )
{
    			 
$a  =  1 ;
    
			
if ( $a  >
  0 ) 
{
    				
 $a  +=  2 ;
    				
print( $a );
			
}
		
}
    		
exit;
    

这里首先定义了两个函数,然后注册到系统,随后通过declare定义一个ticks,步长为1,作用是在declare作用域中的代码每执行ticks次步长,就执行一次注册的方法,方法顺与注册的顺序一致。

所以上面的执行结果是:

tick_handler() called
tick_handler1() called
tick_handler() called
tick_handler1() called
3tick_handler() called
tick_handler1() called
tick_handler() called
tick_handler1() called
tick_handler() called
tick_handler1() called
tick_handler() called
tick_handler1() called

这个方法可以测试执行代码的处理时间。

关于PHP中的declare用法就介绍到这,感兴趣的朋友可以了解看看。最后,希望本文对大家学习和理解declare用法有帮助,想要了解更多大家可以关注其它的相关文章。

文本转载自脚本之家

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

php

若转载请注明出处: php中的declare用法是什么?一文带你看懂
本文地址: https://pptw.com/jishu/653675.html
JS内存与性能问题有哪些,怎样解决 怎么用Node.js搭建一个静态Web服务器的呢?

游客 回复需填写必要信息