php declare(),PHP: declare - Manual

declare

(PHP 4, PHP 5, PHP 7, PHP 8)

El constructor declare es usado para

fijar directivas de ejecución para un bloque de código.

La sintaxis de declare es similar a

la sintaxis de otros constructores de control de flujo:

declare (directive)

statement

La sección directive permite que el

comportamiento de declare sea

configurado.

Actualmente, solamente están reconocidas tres directivas:

ticks (véase abajo para más

información sobre la directiva

ticks),

encoding (véase abajo para más

información sobre la directiva

encoding)

y strict_types (para más infomación,

véase la sección

strict

de la página de Argumentos de funciones)

Versión

Descripción

7.0.0

Se añadió la directiva strict_types

5.3.0

Se añadió la directiva encoding

Ya que las directivas se manejan mientras el fichero está siendo compilado, solamente se pueden

proporcionar literales como valores de directivas. No se pueden emplear variables ni constantes.

Como ejemplo:

declare(ticks=TICK_VALUE);?>

La parte statement del

bloque declare será ejecutada - como

se ejecuta y que efectos secundarios ocurran durante la ejecución

puede depender de la directiva fijada en el

bloque directive.

El constructor declare también se puede utilizar en el alcance

global, afectando a todo el código que le sigue (sin embargo, si el archivo con el

declare fue incluido entonces no afectará al archivo

padre).

// se puede usar ésto:declare(ticks=1) {// script entero aquí}// o se puede usar ésto:declare(ticks=1);// script entero aquí?>

Ticks

Un tick es un evento que ocurre para cada

sentencia tickable N de bajo nivel ejecutada

por el intérprete dentro del bloque declare.

El valor para N se especifica

usando ticks=N

dentro del bloque de declare

de la sección directive.

No todas las sentencias son tickable. Por lo general, expresiones

de condición y expresiones de argumento no son tickables.

Los eventos que ocurren en cada tick se especifican mediante la

Ejemplo #1 Ejemplo de uso del tick

{

echo"tick_handler() llamado\n";

}register_tick_function('tick_handler');$a=1;

if ($a>0) {$a+=2;

print($a);

}?>

Ejemplo #2 Ejemplo de uso de ticks

{

echo"tick_handler() llamado\n";

}$a=1;tick_handler();

if ($a>0) {$a+=2;tick_handler();

print($a);tick_handler();

}tick_handler();?>

Encoding

Una codificación de script puede ser especificada para cada script usando la directiva encoding.

Ejemplo #3 Declarando un encoding para el script

Precaución

Cuando se combina con espacios de nombres, la única sintaxis legal para declarar

es declare(encoding='...'); donde ...

es el valor del encoding. declare(encoding='...') {}

resultará en un error de análisis cuando se combina con espacios de nombres.

El valor declarado de encoding es ignorado en PHP 5.3 a menos que php esté compilado con

--enable-zend-multibyte.

Tener en cuenta que PHP no expone si --enable-zend-multibyte fue

utilizado para compilar PHP que no sea por

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值