> On Jul 27, 2024, at 3:19 AM, Rob Landers <[email protected]> wrote:
> There’s nothing stopping you from doing that, except your autoloader. If you
> wanted to have every class ending with Arg load the same class without arg;
> so QueryArg and Query are usually in the same file (but can be in separate
> files too), you could do something like this:
>
> <?php
> function customArgAutoloader($className) {
> if (substr($className, -3) === 'Arg') {
> $baseClass = substr($className, 0, -3);
> $filePath = __DIR__ . '/' . $baseClass . '.php';
>
> if (file_exists($filePath)) {
> require_once $filePath;
> }
> }
> }
>
> spl_autoload_register('customArgAutoloader');
>
> (Untested, but you get the idea)
Sure, but that is non-standard, so it would be swimming against the current to
use it, and no one else would write code that way.
Still, the reason for my comment was to ask we consider a first-class args type
which would enable being able to pass parameters like `{foo: 1, bar: 2}`
instead of `new QueryArgs(foo: 1, bar: 2)`, not to discuss autoloaders.
-Mike