Files
2026-06-06 18:43:00 +08:00

42 lines
829 B
PHP

<?php
declare(strict_types=1);
namespace App\Http\Controllers\Helpers;
use App\Models\FileList;
use Hypervel\Http\Request;
use App\Http\Controllers\FilesMainController;
use Hypervel\Database\Eloquent\Model;
class QueryHelper
{
public static function findOrNullByHashOrId(
int|string|Model|false $hashOrId,
string $modelClass
): false|Model {
if (!$hashOrId) {
return false;
}
if ($hashOrId instanceof Model) {
return $hashOrId;
}
if (!is_subclass_of($modelClass, Model::class)) {
throw new \InvalidArgumentException('Invalid model class');
}
if (is_int($hashOrId)) {
return $modelClass::find($hashOrId);
}
return $modelClass::where('hashkey', $hashOrId)->first();
}
}