Допустим, у меня есть класс, который реализует ArrayAccess
, но не позволяет добавлять новые данные.Вы можете установить уже существующие значения, но не можете добавить к размеру.
$arrayAccessible[1] = new StdClass(); //okay
$arrayAccessible[] = new StdClass(); //should throw an exception
Какой тип исключения я должен выбросить?У меня есть типы исключений SPL, и я должен использовать их, если это имеет смысл.Лучшее, что я могу придумать, это, возможно, BadFunctionCallException
или BadMethodCallException
.
Если нет хорошего броска, возможно, я сделаю UnsupportedOperationException
или подобное.Тем не менее, это определенно не то, что я хотел бы сделать.Это было бы невероятно сложно добавить в этот проект.