Есть ли способ расширить собственный массив PHP с помощью функции/метода __toString()?
Я хотел бы быть в состоянии сделать
$a = array($x, $y, $z);
echo $a;
Это не должно жаловаться ни на уведомление Array to string conversion
, ни на унылый вывод Array
, а вместо этого делать то, что я реализую в методе __toString() массива.
(В __toString я бы сделал что-то вроде перебора массива и вызова __toString() для каждого элемента и объединения их вместе в строку, описывающую весь массив.)
(Я знаю, что это можно сделать, например, с помощью объекта-оболочки, это не вопрос. Я хочу настроить PHP на более тонком уровне.)
implode()
может привести к необратимым последствиям, если данные содержат метаданные csv —serialize()
безопаснее. Однако для использования произвольной схемы кодированияarray_reduce()
может быть правильным подходом. - person symcbean   schedule 01.09.2018