waUtils

Разные служебные действия

Содержание...

Методы

  • getFieldValues

    Извлекает значения поля из элементов массива.

  • varExportToFile

    Сохраняет значение переменной в конфигурационный файл.

public static function getFieldValues (array $array, $field, $index_key = null)

Извлекает значения поля из элементов массива: ассоциативных подмассивов или объектов.

Параметры

  • $array

    Массив значений.

  • $field

    Имя поля/свойства, значения которого нужно получить. Им может быть или один из ключей в подмассивах значений или имя публичного поля в объектах значений.

  • $index_key

    Обозначение ключа записей в массиве результатов. Допустимые обозначения:

    • Один из ключей в подмассивах или объектах исходного массива. Значения записей/свойств с этим ключом будут использоваться в качестве ключей массива результатов.
    • true. Ключами в массиве результатов будут ключи исходного массива.
    • null. Ключи в массиве результатов будут числовыми начиная с 0. В массиве результатов в этом случае будут содержаться только уникальные значения.

Пример

$array = array(
	111 => array(
		'id' => 1,
		'name' => 'one',
	),
	222 => array(
		'id' => 2,
		'name' => 'two',
	),
	333 => array(
		'id' => 3,
		'name' => 'three',
	),
);
waUtils::getFieldValues($array, 'name', 'id');
waUtils::getFieldValues($array, 'name', true);
waUtils::getFieldValues($array, 'name', null);

Результат

//ключ — 'id'
array(
    1 => 'one',
    2 => 'two',
    3 => 'three',
);

//true
array(
    111 => 'one',
    222 => 'two',
    333 => 'three',
);

//null
array(
    0 => 'one',
    1 => 'two',
    2 => 'three',
);

public static function varExportToFile ($var, $file, $export = true)

Сохраняет значение переменной в конфигурационный файл.

Параметры

  • $var

    Значение переменной.

  • $file

    Путь к файлу, в который нужно сохранить значение переменной.

  • $export

    Флаг, требующий получить текстовое представление значения переменной с использованием PHP-функции var_export(). Обычно это обходимо для сохранения массивов.

Пример

//массив
$array_var = array(
    'id' => 'some',
    'url' => '/test/',
);
$file = wa()->getConfig()->getConfigPath('plugins/test/config_array.php');
waUtils::varExportToFile($var, $file);

//скалярное значение
$scalar_var = 1528117809;
$file = wa()->getConfig()->getConfigPath('plugins/test/config_scalar.php');
waUtils::varExportToFile($scalar_var, $file, false);