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
Solo quería agregar que esta información es, de hecho, en el sitio web de PHP en la sección de operadores , o más específicamente, operadores de asignación .
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''];