compact Создаёт массив, содержащий названия переменных и их значения &reftitle.description; arraycompact arraystringvar_name arraystringvar_names Создаёт массив, содержащий переменные и их значения. Для каждого переданного аргумента функция compact ищет в текущей таблице символов переменную с таким же именем и добавляет её в выводимый массив так, что имя переменной становится ключом, а значение переменной становится значением этого ключа. Короче, она выполняет операцию, противоположную функции extract. До PHP 7.3 строки, для которых не были найдены переменные, будут пропущены без генерации ошибки. &reftitle.parameters; var_name var_names Функция compact принимает неограниченное количество аргументов. Любой из аргументов может быть либо строкой, содержащей название переменной, либо массивом названий переменных. Массив может содержать вложенные массивы названий переменных; функция compact обрабатывает их рекурсивно. &reftitle.returnvalues; Возвращает массив с добавленными переменными. &reftitle.errors; Функция compact выдаёт ошибку уровня E_WARNING, если полученная строка ссылается на неопределённую переменную. &reftitle.changelog; &Version; &Description; 8.0.0 Если заданная строка ссылается на неопределённую переменную, теперь будет сгенерированна ошибка уровня E_WARNING. 7.3.0 Функция compact теперь выдаёт ошибку уровня E_NOTICE, если заданная строка связана с неопределённой переменной. Ранее такие строки пропускались без уведомления. &reftitle.examples; Пример использования <function>compact</function> ]]> &example.outputs; SIGGRAPH [city] => San Francisco [state] => CA ) ]]> &reftitle.notes; Замечания по работе функции compact Так как переменные переменных не могут быть использованы с суперглобальными массивами внутри функций, суперглобальные массивы не могут быть переданы в compact. &reftitle.seealso; extract