phramework/jsonapi doc
  • Namespace
  • Class
  • Tree
  • Deprecated
  • Todo

Namespaces

  • Phramework
    • JSONAPI
      • Controller
        • POST
      • Model
      • Viewers

Classes

  • Controller
  • Fields
  • Filter
  • FilterAttribute
  • FilterJSONAttribute
  • Model
  • Page
  • Relationship
  • RelationshipResource
  • Resource
  • Sort
  • Util
  • ValidationModel

Class Fields

Fields helper methods

Namespace: Phramework\JSONAPI
License: Apache-2.0
Author: Xenofon Spafaridis nohponex@gmail.com
Since: 1.0.0
Located at Fields.php

Methods summary

public object
# getFields( )

Deprecated

Returns

object
public
# __construct( object|null $fields = null )

Parameters

$fields

Throws

Exception

Example

new Fields((object)
    Article::getType() => ['title']
]);

new Fields((object)
    Article::getType() => ['title', 'updated'],
    Tag::getType()     => ['title']
]);

public string[]
# get( string $resourceType )

Parameters

$resourceType

Returns

string[]
public
# add( string $resourceType, string|string[] $field )

Parameters

$resourceType
$field

Returns


$this
public
# validate( string $modelClass )

Parameters

$modelClass

Todo

public static Phramework\JSONAPI\Fields|null
# parseFromParameters( object $parameters, string $primaryResourceModelClass )

Parameters

$parameters
Request parameters
$primaryResourceModelClass
Primary resource model class

Returns

Phramework\JSONAPI\Fields|null

Throws

Phramework\Exceptions\RequestException
Phramework\Exceptions\IncorrectParametersException

Uses

Model::getFields for each resource type to parse allowed fields

Example

$fields = Fields::parseFromParameters(
    (object) [
        'fields' => [
            Article::getType() => ['title, updated'],
            Tag::getType()     => ['title']
        ]
    ], //Request parameters object
    Article::class
);

public mixed
# __get( string $name )

Parameters

$name

Returns

mixed

Throws

Exception

Properties summary

protected object $fields
#

Magic properties

public read-only object $fields
phramework/jsonapi doc API documentation generated by ApiGen