TGViewer
Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter @phpproglib · 10.5K subscribers
Post #4193 3.05K
Подмена функций стандартной библиотеки PHP с помощью xepozz/internal-mocker

Здесь описывается проблема подмены функций в PHP, которые уже загружены до момента подгрузки Composer Autoloader или других объявлений функций. Эта проблема встает, когда необходимо подменить функцию, которая уже существует в стандартной библиотеке PHP, но переопределить её нельзя из-за ошибки о том, что функция уже существует.

Для решения этой проблемы автор предлагает использовать библиотеку xepozz/internal-mocker, которая позволяет подменять функции на лету. Библиотека позволяет создать свою собственную функцию, которая будет эмулировать стандартную функцию, например, time(), и при этом сохранять её функциональность. Таким образом, можно подменять функции для тестирования или других целей.
Хабр Подмена функций стандартной библиотеки PHP с помощью xepozz/internal-mocker Цель Подмена (mock) функций, которые уже “загружены” в PHP еще до подгрузки Composer Autoloader, каких-либо include или других объвлений function name() {} Подмена не только из под не пустого...
  • 🔥 5
  • 👾 4
  • 🥱 1
More from @phpproglib
  1. Oct 2, 2026🎹 Что делать после ChatGPT? Следующий шаг — AI-агенты. Они не просто отвечают на запросы,…
  2. Sep 30, 2026🔥 Последний день для разработчиков AI уже пишет код. Теперь важнее научиться встраивать е…
  3. Sep 30, 2026🐸 Библиотека пхпшника
  4. Sep 29, 2026💡 Laravel-фича, которая спасает тесты от случайных запросов Http::preventStrayRequests()…
  5. Sep 28, 2026🔐 ramsey/uuid — UUID без самописного кода Библиотека помогает генерировать, парсить и вал…
  6. Sep 28, 2026🤔 Что выведет код? ❤️ — 1 🔥 — 2 👍 — 12 👾 — Fatal error 👇 Правильный ответ (нажми, что…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →