Oihana PHP System

OfferCatalog extends ItemList

An OfferCatalog is an ItemList that contains related Offers and/or further OfferCatalogs that are offeredBy the same provider.

Table of Contents

Constants

CONTEXT  = 'https://schema.org'
JSON-LD @context declaration for Schema.org.

Properties

$_from  : string|null
The metadata to indicates the edge 'from' identifier.
$_id  : null|string
The metadata identifier of the item.
$_key  : null|string
The metadata unique key identifier of the thing.
$_rev  : null|string
The metadata revision value of the thing.
$_to  : string|null
The metadata to indicates the edge 'to' identifier.
$active  : bool|null
The active flag.
$additionalType  : array<string|int, mixed>|string|null|object
An additionalType for the item.
$aggregateElement  : Thing|null
Indicates a prototype of the elements in the list that is used to hold aggregate information (ratings, offers, etc.).
$alternateName  : string|object|null
An alias for the item.
$created  : null|string|DateTime
Date of creation of the resource.
$description  : string|null
A short description of the item.
$disambiguatingDescription  : string|null
A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.
$hasPart  : string|Thing|array<string|int, mixed>|null
Indicates an item that this part of this item.
$id  : null|int|string
The unique identifier of the item.
$identifier  : string|null
The identifier of the item.
$image  : string|object|null
The image reference of this resource.
$isPartOf  : string|Thing|array<string|int, mixed>|null
Indicates an item that this item is part of.
$itemListElement  : null|array<string|int, mixed>|string|ListItem|Thing
For itemListElement values, you can use simple strings (e.g. "Peter", "Paul", "Mary"), existing entities, or use ListItem.
$itemListOrder  : string|Enumeration|DefinedTerm|null
Type of ordering (e.g. Ascending, Descending, Unordered).
$license  : string|object|null
A legal document giving official permission to do something with the resource.
$modified  : null|string|DateTime
Date on which the resource was changed.
$name  : int|string|null
The name of the item.
$numberOfItems  : int|float|null
The number of items in an ItemList.
$publisher  : string|array<string|int, mixed>|Person|Organization|null
The publisher of the resource.
$url  : int|string|null
URL of the item.

Methods

__construct()  : mixed
Constructor to hydrate public properties from an array or stdClass.
jsonSerialize()  : array<string|int, mixed>
Serializes the current object into a JSON-LD array.

Constants

CONTEXT

JSON-LD @context declaration for Schema.org.

public mixed CONTEXT = 'https://schema.org'

Properties

$_from

The metadata to indicates the edge 'from' identifier.

public string|null $_from

$_id

The metadata identifier of the item.

public null|string $_id

$_key

The metadata unique key identifier of the thing.

public null|string $_key

$_rev

The metadata revision value of the thing.

public null|string $_rev

$_to

The metadata to indicates the edge 'to' identifier.

public string|null $_to

$active

The active flag.

public bool|null $active

$additionalType

An additionalType for the item.

public array<string|int, mixed>|string|null|object $additionalType

$aggregateElement

Indicates a prototype of the elements in the list that is used to hold aggregate information (ratings, offers, etc.).

public Thing|null $aggregateElement

$alternateName

An alias for the item.

public string|object|null $alternateName

$created

Date of creation of the resource.

public null|string|DateTime $created

$description

A short description of the item.

public string|null $description

$disambiguatingDescription

A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation.

public string|null $disambiguatingDescription

$hasPart

Indicates an item that this part of this item.

public string|Thing|array<string|int, mixed>|null $hasPart

$id

The unique identifier of the item.

public null|int|string $id

$identifier

The identifier of the item.

public string|null $identifier

$image

The image reference of this resource.

public string|object|null $image

$isPartOf

Indicates an item that this item is part of.

public string|Thing|array<string|int, mixed>|null $isPartOf

$itemListElement

For itemListElement values, you can use simple strings (e.g. "Peter", "Paul", "Mary"), existing entities, or use ListItem.

public null|array<string|int, mixed>|string|ListItem|Thing $itemListElement

Text values are best if the elements in the list are plain strings. Existing entities are best for a simple, unordered list of existing things in your data. ListItem is used with ordered lists when you want to provide additional context about the element in that list or when the same item might be in different places in different lists. Note: The order of elements in your mark-up is not sufficient for indicating the order or elements. Use ListItem with a 'position' property in such cases.

$license

A legal document giving official permission to do something with the resource.

public string|object|null $license

$modified

Date on which the resource was changed.

public null|string|DateTime $modified

$name

The name of the item.

public int|string|null $name

$numberOfItems

The number of items in an ItemList.

public int|float|null $numberOfItems

Note that some descriptions might not fully describe all items in a list (e.g., multi-page pagination); in such cases, the numberOfItems would be for the entire list.

$url

URL of the item.

public int|string|null $url

Methods

__construct()

Constructor to hydrate public properties from an array or stdClass.

public __construct([array<string|int, mixed>|object|null $init = null ]) : mixed

This allows objects to be quickly populated with associative data without manually setting each property.

Parameters
$init : array<string|int, mixed>|object|null = null

A data array or object used to initialize the instance. Keys must match public property names.

Tags
example
use org\schema\Person;
use org\schema\constants\Prop;

$person = new Person
([
    Prop::NAME => 'Jane Doe',
    Prop::URL  => 'https://example.com/janedoe'
]);

echo $person->name; // Outputs: Jane Doe

jsonSerialize()

Serializes the current object into a JSON-LD array.

public jsonSerialize() : array<string|int, mixed>

This method will include all public properties, the schema.org @context, and the inferred @type based on the class name.

Null values will be automatically removed using compress().

Tags
throws
ReflectionException

If reflection fails when accessing properties.

example
use org\schema\Person;
use org\schema\constants\Prop;

$person = new Person([
    Prop::NAME => 'John Smith',
    Prop::ID   => 'jsmith-001'
]);

echo json_encode($person, JSON_PRETTY_PRINT);

Output:

{
  "@type": "Person",
  "@context": "https://schema.org",
  "id": "jsmith-001",
  "name": "John Smith"
}
Return values
array<string|int, mixed>

A JSON-LD array representation of the object.


        
On this page

Search results