> On Jul 27, 2024, at 3:19 AM, Rob Landers <rob@bottled.codes> 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

Reply via email to