Подтвердить что ты не робот

Инициализация нескольких переменных PHP одновременно

Как я могу инициализировать несколько переменных PHP со значением нуля одновременно без использования массива? Я хочу написать код, который по существу эквивалентен следующему:

$first = 0;
$second = 0;
$third = 0;
$fourth = 0;
4b9b3361

Ответ 1

$first = $second = $third = $fourth = 0;

Ответ 2

Хотя выполнимо инициализировать несколько переменных, используя оператор запятой в цикле for, следующим образом:

<?php
for ($a=0,$b=0,$c=0,$d=0;;) {
    break;
}
var_dump($a,$b,$c,$d);

(см. демонстрацию здесь)

конструкция list обеспечивает более эффективный способ назначения нескольких переменных, как показано в следующем примере:

<?php

list( $first, $second, $third, $fourth ) = array( 0, 0, 0, 0 );
var_dump($first, $second, $third, $fourth );

Смотри демо здесь

Можно пожелать пересмотреть возможность избежать использования массивов для достижения нескольких инициализированных переменных. В PHP7. 1+ можно написать более простой и надежный код, если использовать деструктуризацию массива, доступную с коротким синтаксисом массива, следующим образом:

<?php

[$first, $second, $third, $fourth ] = [0, 0, 0, 0];
var_dump($first, $second, $third, $fourth );

Смотри демо здесь.

Если нужно быть уверенным в том, что инициализируемые переменные не были ранее установлены, см. соответствующее обсуждение, особенно этот ответ.

Ответ 3

  Если вы хотите инициализировать несколько переменных массива, используйте

# Initialize multiple array variables with Empty values
$array_1 = $array_2 = $array_3 = array();

# Initialize multiple array variables with Some values in it
list( $array_1, $array_2, $array_3) = array('one','two','three');

# Print value of array variables
var_dump($array_1,$array_2,$array_3);

Output:
*******
string 'one' (length=3)
string 'two' (length=3)
string 'three' (length=5)

Если вы хотите инициализировать несколько обычных переменных, используйте

# Initialize multiple regular variables with values
$a = $b = $c = 'Hello PHP';
echo $a.'<br>',$b.'<br>', $c.'<br>';

Output:
*******
Hello PHP
Hello PHP
Hello PHP