Operador ternario.

10 views
Skip to first unread message

Stuardo -StR- Rodríguez

unread,
Feb 5, 2016, 2:55:32 PM2/5/16
to ph...@googlegroups.com
Recuerdo cuando estaba en 1er semestre de la U y el profesor enseñó el operador ternario ?: Es algo que yo ya usaba casi a diario y es molesta la redundancia, por eso le pregunté. "¿Mire profe, y no se puede acortar o hacer eso mas simple?" Ahí me di cuenta que el que no sabe, enseña pues me contestó "¿No está poniendo atención? se llama ternario porque usa 3 partes. Si se pudiera quitar una, no sería ternario, ¿o si?"

Hoy aprendí que SI se puede omitir, o por lo menos en PHP en algunos casos. Por ejemplo, el código tipicamente escrito así

function saludo($nombreOpcional = false) {
$nombre = ($nombreOpcional) ? $nombreOpcional : 'mundo';
return "Hola $nombre!";
}

Se puede escribir así:

function saludo($nombreOpcional = false) {
$nombre = $nombreOpcional ?: 'mundo';
return "Hola $nombre!";
}

saludo()!!


--
Stuardo Rodríguez| Mercenary Web Developer| La Maphpia
http://maphpia.com| email:  s...@maphpia.com| skype: stuardo_str



Esduardo Avelar

unread,
Feb 8, 2016, 11:00:00 AM2/8/16
to phpgt
Pero y si es falso que regresas?

--
--
PHPGT :: Grupo de PHPeros de Guatemala
email: ph...@googlegroups.com
reglas de uso: https://sites.google.com/site/grupophpgt

---
Has recibido este mensaje porque estás suscrito al grupo "PHPGT Grupo de PHPeros de Guatemala" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a phpgt+un...@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.



--
Saludos.

Ing. Esduardo Avelar.

Luis Pirir

unread,
Feb 12, 2016, 4:36:08 PM2/12/16
to PHPGT Grupo de PHPeros de Guatemala
No, entiendo que si es verdadero imprime $nombreOpcional, si es falso imprimira 'mundo'. Que buenisima miersh

A partir de PHP 5.3, es posible dejar de lado la parte media del operador ternario. La expresión expr1 ?: expr3retorna expr1 si expr1 se evalúa como TRUE y expr3 si es de otra manera.

Nada como recurrir a la docu oficial :P

Salut !

Douglas

unread,
Feb 12, 2016, 5:08:51 PM2/12/16
to ph...@googlegroups.com
Hablando un poco mas del lado de sintaxis, ya no es un operador ternario, ya que no son 3 parametros. Seria mas un operador nuevo ?: el retorna el primer argumento si es diferente de false, sino el segundo.


--
Enviado desde mi Gmail
Reply all
Reply to author
Forward
0 new messages