====== QueryApiController ======
**Layer:** ''Controller'' · **Source:** ''lib/controller/api/QueryApiController.php:39'' (lines 39–203)
----
class QueryApiController extends ApiController
======= Inheritance =======
^ Relation ^ Type ^ Meaning ^
| extends | [[scriptlog:lib:controller:apicontroller|''ApiController'']] | parent class/interface |
======= Constants (0) =======
//None.//
======= Properties (1) =======
^ Visibility ^ Type ^ Name ^ Default ^ Line ^
| ''private'' | ''(untyped)'' | ''$postService'' | | 44 |
======= Methods (5) =======
^ Visibility ^ Method ^ Summary ^ Line ^
| public | ''__construct()'' | Constructor | 49 |
| public | ''index()'' | Generic query endpoint. | 68 |
| public | ''posts()'' | Query posts only. | 109 |
| public | ''pages()'' | Query pages only. | 140 |
| private | ''executeQuery()'' | Execute a query based on keyword and type. | 170 |
======== __construct() ========
public function __construct()
//lines 49–54 (6)//
Constructor
//Takes no parameters.//
======== index() ========
public function index($_params = [])
//lines 68–99 (32)//
Generic query endpoint.
QUERY /api/v1/query
Accepts a JSON body with query parameters and returns results.
This is a safe, idempotent endpoint suitable for complex queries
that would be impractical to encode as URI query parameters.
^ Parameter ^ Type ^ Default ^ Description ^
| ''$_params'' | ''(untyped)'' | ''[]'' | //none// |
**Returns:** ''(none declared)'' — void
======== posts() ========
public function posts($_params = [])
//lines 109–130 (22)//
Query posts only.
QUERY /api/v1/query/posts
^ Parameter ^ Type ^ Default ^ Description ^
| ''$_params'' | ''(untyped)'' | ''[]'' | //none// |
**Returns:** ''(none declared)'' — void
======== pages() ========
public function pages($_params = [])
//lines 140–161 (22)//
Query pages only.
QUERY /api/v1/query/pages
^ Parameter ^ Type ^ Default ^ Description ^
| ''$_params'' | ''(untyped)'' | ''[]'' | //none// |
**Returns:** ''(none declared)'' — void
======== executeQuery() ========
private function executeQuery($keyword, $type)
//lines 170–202 (33)//
Execute a query based on keyword and type.
^ Parameter ^ Type ^ Default ^ Description ^
| ''$keyword'' | ''(untyped)'' | //required// | //none// |
| ''$type'' | ''(untyped)'' | //required// | //none// |
**Returns:** ''(none declared)'' — array
======= Imports =======
^ Alias ^ Fully-qualified name ^
| ''ApiController'' | [[scriptlog:lib:controller:apicontroller|''Scriptlog\Controller\ApiController'']] |
| ''ApiHateoas'' | [[scriptlog:lib:core:apihateoas|''Scriptlog\Core\ApiHateoas'']] |
| ''ApiResponse'' | [[scriptlog:lib:core:apiresponse|''Scriptlog\Core\ApiResponse'']] |
| ''FormValidator'' | [[scriptlog:lib:core:formvalidator|''Scriptlog\Core\FormValidator'']] |
| ''Sanitize'' | [[scriptlog:lib:core:sanitize|''Scriptlog\Core\Sanitize'']] |
| ''PostDao'' | [[scriptlog:lib:dao:postdao|''Scriptlog\Dao\PostDao'']] |
| ''PostService'' | [[scriptlog:lib:service:postservice|''Scriptlog\Service\PostService'']] |
----
//This page is generated from source by 'tools/gendoc'. Edits will be overwritten.//