tag strip_tags remove ejemplo php

php - strip_tags - ¿Para qué se usa+=?



strip_tags() (10)

Además, "a + = b" es una expresión cuyo valor se puede usar de nuevo inmediatamente.

(((((a += b) *= c) += d) * e) += f);

es mucho menos escribir que

a = a + b; a = a * c; a = a + d; a = a * e; a = a + f;

Creo que esta es una pregunta tonta, pero no pude encontrarla en php. ¿Por qué es un + con el = en el siguiente código?

function calculateRanking() { $created = $this->getCreated(); $diff = $this->getTimeDifference($created, date(''F d, Y h:i:s A'')); $time = $diff[''days''] * 24; $time += $diff[''hours'']; $time += ($diff[''minutes''] / 60); $time += (($diff[''seconds''] / 60)/60); $base = $time + 2; $this->ranking = ($this->points - 1) / pow($base, 1.5); $this->save(); }

¿Esto es tan $ time tiene todos esos valores o más bien está agregando todos los valores a $ tiempo?

Gracias


Está agregando todos esos valores al tiempo.

something += somethingelse

es un atajo para

something = something + somethingelse

-Adán


Hay muchos de estos operadores de taquigrafía en C, C ++ en otros idiomas modernos.

a -= b; // a = a - b; a *= b; // a = a * b; a &= b; // a = a & b;

etc., etc., etc.


Operador de acceso directo para $ val = $ val + $ otherval.

Esto solo funciona en valores numéricos



Vamos a reemplazar algunas cosas para que sea un poco más fácil de entender.

El + = es el mismo de abajo:

$time = $diff[''days''] * 24; $time = $time + $diff[''hours'']; $time = $time + ($diff[''minutes''] / 60); $time = $time + (($diff[''seconds''] / 60)/60);


x + = 10 es simplemente una forma más corta de escribir x = x + 10.

En este caso, el código está encontrando la diferencia de tiempo en horas a partir de una estructura de diferencia de tiempo.


a += 2; es el equivalente de a = a + 2;

En un momento dado con algunos lenguajes (especialmente los compiladores de C muy antiguos), el compilador producía un mejor código con la primera opción. Se queda ahora porque es un idioma común y la gente lo usa para pensar que es más claro.


Por qué cada cuerpo va de una manera simple si estamos usando + = o - = o cualquier combinación de más de un operador significa que estamos realizando alguna acción de la manera más rápida como si hiciéramos a = a + b aquí el compilador genera 2 token para un y 1 para b que sumar ese valor y almacenarlo es un proceso complejo y lento, pero si haces a = + b aquí, solo tenemos un total de 2 tokens y su funcionamiento es similar al bitwise que funciona rápido. Para más detalles acerca de la codificación en el nivel de compilación o el funcionamiento del código, puede ponerse en contacto con mi id, que es [email protected]


$time += $diff[''hours''];

es lo mismo que decir

$time = $time + $diff[''hours''];