$this->api->editMessageText([
'chat_id' => $chatId,
'message_id' => $messageId,
'text' => $text,
'parse_mode' => $parseMode,
'reply_markup' => $replyMarkup ?: Keyboard::hide(),
]);
Также мне не хотелось бы писать DI контейнер для каждого "серьезного" класса.
$_POST, $_GET, $_FILES
не использовать вообще. Вернее, использовать правильно. У вас одна точка входа - в ней и инициализируйте специальный класс, который работает с этими массивами, и передавайте его дальше в код. Это избавит вас от обращения к глобальным массивам и точно ограничит контекст данными, которые вы можете использовать в текущем запросе. public function getAll()
{
// code
return new ArrayCollection($posts);
}
...
class ArrayCollection
{
private $collection;
public function __construct($collection)
{
$this->collection = $collection;
}
public function sortByName()
{
return array_filter($this->collection, function(){});
}
}
try {
$connection->beginTransaction();
$this->questions->declineQuestion(Question::NEW, $uniqid);
$this->mentorWorks->failWork($userId, $questionId, $uniqid);
$connection->commit();
} catch (\PDOException $e) {
$connection->rollBack();
$this->logger->warning($e->getMessage);
}