112 votes

Abréviation PHP de isset() ?

Existe-t-il une façon abrégée d'assigner une variable à quelque chose si elle n'existe pas en PHP ?

if(!isset($var) {
  $var = "";
}

J'aimerais faire quelque chose comme

$var = $var | "";

327voto

hek2mgl Points 38787

Mise à jour pour PHP 7 (merci choc_gone_sauvage )

PHP 7 introduit l'option opérateur de coalescence nul ce qui simplifie les déclarations ci-dessous :

$var = $var ?? "default";

Avant PHP 7

Non, il n'y a pas d'opérateur spécial ou de syntaxe particulière pour cela. Cependant, vous pouvez utiliser l'opérateur ternaire :

$var = isset($var) ? $var : "default";

Ou comme ça :

isset($var) ?: $var = 'default';

73voto

Fab Sa Points 1155

PHP 7.4+. ; avec le opérateur d'affectation à coalescence nulle

$var ??= '';

PHP 7.0+. ; avec le opérateur de coalescence nul

$var = $var ?? '';

PHP 5.3+. ; avec le opérateur ternaire sténographie

isset($var) ?: $var = '';

Ou pour toutes/anciennes versions con isset :

$var = isset($var) ? $var : '';

o

!isset($var) && $var = '';

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X