jaem3l/unfuck

一个库,用于修正供应商代码并破坏你自己的代码

安装: 10

依赖: 0

建议者: 0

安全性: 0

星标: 77

关注者: 5

分支: 1

公开问题: 0

类型:composer-plugin

v0.2 2024-01-09 19:34 UTC

This package is auto-updated.

Last update: 2024-09-09 21:10:37 UTC


README

多年来,PHP 的发展使得在不考虑运行时的情况下使用供应商代码变得更加困难。

所以,如果你厌倦了开源维护者通过以下方式给你带来的负担:

  • 在类或方法上使用 final 关键字
  • 将属性或方法的可见性降低到 privateprotected
  • 通过添加类型声明、返回类型或类型属性来限制功能
  • 通过强制传递方法参数来强制使用它们
  • 使用严厉的 readonly 修饰符强制不可变性
  • 提高运行时稳定性

Jæm3l 会为你解决这些问题!

只需安装 jaem3l/unfuck,即可修正你使用的供应商代码,并破坏你自己的代码

$ composer require jaem3l/unfuck

Jæm3l Unfuck 将挂钩到运行时以消除所有这些痛苦的限制,并给你全部的自由来自由地射击自己的脚、背部或头部。

示例

你的供应商库提供了一个功能类,例如

final class Example
{
    private readonly string $foo;

    public function __construct(string $foo)
    {
        $this->foo = $foo;
    }

    private function getFoo(): string
    {
        return $this->foo;
    }
}

但你确信你想要这样使用它

$inst = new class extends Example{};
$inst->foo = 42;

var_dump($inst->getFoo());

有了 Jæm3l Unfuck,你终于可以自由地这样做。YOLO

PS:这可能会在时间和内存消耗方面影响运行时性能。但如果你安装了它,你已经证明你并不真正关心你的运行时。这应该阻止你吗?!