Files
nexusphp/app/Http/Resources/BaseResource.php
2025-04-17 01:39:40 +07:00

26 lines
621 B
PHP

<?php
namespace App\Http\Resources;
use Illuminate\Http\Resources\Json\JsonResource;
abstract class BaseResource extends JsonResource
{
protected abstract function getResourceName(): string;
protected function whenIncludeField($field): bool
{
return $this->whenInclude($field, "include_fields");
}
private function whenInclude($field, $prefix): bool
{
$fields = request()->input("$prefix." . $this->getResourceName());
if (!$fields) {
return false;
}
$fieldsArr = explode(',', $fields);
return in_array($field, $fieldsArr);
}
}