public static function infix($str, $infix)
    {
        return lcfirst(
            preg_replace_callback(
                '/(?<=.)[A-Z]/',
                function ($m) use ($infix) {
                    return $infix . strtolower($m[0]);
                },
                $str
            )
        );
    }