т.е. делать protected и private имеет смысл только в том случае, если метод явно не должен использоваться без наследника или вообще должен использоваться только внутри класса.
сарказм?))) Я через print_r() пробовал выводить, но точку с запятой забыл поставить, вот песочница и ругалась. Так что в доке всё верно указано, можно любой тип использовать в качестве значения