DiscordPHP Documentation

PrivateChannelRepository extends AbstractRepository
in package

Contains private channels and groups that the client has access to.

Tags
see
Channel
since
4.0.0

Table of Contents

Properties

$cache  : CacheWrapper
$discrim  : string
The collection discriminator.
$cache  : CacheWrapper
$class  : string
Class type allowed into the collection.
$discrim  : string
The collection discriminator.
$endpoints  : mixed
{@inheritDoc}
$factory  : Factory
The parts factory.
$http  : Http
The HTTP client.
$items  : array<string|int, mixed>
The items contained in the collection.
$vars  : array<string|int, mixed>
Variables that are related to the repository.

Methods

__call()  : mixed
This method checks if a method with the name "__Collection__{$name}" exists within the class. If it does, it calls that method with the provided arguments.
__construct()  : mixed
AbstractRepository constructor.
__debugInfo()  : array<string|int, mixed>
Returns an item that will be displayed for debugging.
__get()  : mixed
__serialize()  : array<string|int, mixed>
Returns the string representation of the collection.
__unserialize()  : void
Unserializes the collection.
all()  : bool
Checks if all items match the callback.
any()  : bool
Checks if any item matches the callback.
clear()  : void
Clears the repository.
collect()  : ExCollectionInterface
Converts the items into a new collection.
count()  : int
Counts the amount of objects in the collection.
create()  : Part
Builds a new, empty part.
delete()  : PromiseInterface<string|int, Part>
Attempts to delete a part on the Discord servers.
diff()  : ExCollectionInterface
Gets the difference between the items.
fetch()  : PromiseInterface<string|int, Part>
Gets a part from the repository or Discord servers.
fill()  : self
Fills an array of items into the collection.
filter()  : ExCollectionInterface
Runs a filter callback over the repository and returns a new collection based on the response of the callback.
find()  : Part|null
Runs a filter callback over the repository and returns the first part where the callback returns `true` when given the part.
find()  : Channel|null
find_key()  : mixed
Finds the key of the first item that matches the callback.
first()  : Part|null
Returns the first cached part.
first()  : Channel|null
for()  : ExCollectionInterface
Creates a collection for a class.
fresh()  : PromiseInterface<string|int, Part>
Returns a part with fresh values.
freshen()  : PromiseInterface<string|int, static>
Freshens the repository cache.
from()  : ExCollectionInterface
Creates a collection from an array.
get()  : Part|null
Gets a part from the repository.
get()  : Channel|null
getIterator()  : Traversable
Returns an iterator for the cache.
has()  : bool
Checks if the array has an object.
intersect()  : ExCollectionInterface
Gets the intersection of the items.
isset()  : bool
If the collection has an offset.
jsonSerialize()  : array<string|int, mixed>
{@inheritDoc}
keys()  : array<string|int, int>|array<string|int, string>
Get the keys of the items.
last()  : Part|null
Returns the last cached part.
last()  : Channel|null
map()  : ExCollectionInterface
Runs a callback over the collection and creates a new Collection.
merge()  : self
Merges another collection into this collection.
offsetExists()  : bool
If the repository has an offset.
offsetGet()  : Part|null
Gets a part from the repository.
offsetSet()  : void
Sets a part into the repository.
offsetUnset()  : void
Unsets an index from the repository.
pull()  : Part|mixed
Pulls a part from the repository.
pull()  : Channel|null
push()  : self
Pushes items to the collection.
pushItem()  : self
Pushes a single item to the repository.
reduce()  : ExCollectionInterface
Reduces the collection to a single value using a callback function.
save()  : PromiseInterface<string|int, Part>
Attempts to save a part to the Discord servers.
search()  : string|int|false
Searches for a given value within the collection and returns the corresponding key if successful.
serialize()  : string
Returns the string representation of the collection.
set()  : mixed
Sets a part in the repository.
shift()  : mixed
Shifts an item from the collection.
slice()  : ExCollectionInterface
Slices the collection.
sort()  : ExCollectionInterface
Sort through each item with a callback.
splice()  : self
Splices the collection, removing a portion of the items and replacing them with the given replacement.
toArray()  : array<string|int, mixed>
Converts the weak caches to array.
unique()  : ExCollectionInterface
Returns unique items.
unserialize()  : void
Unserializes the collection.
values()  : array<string|int, mixed>
Get the values of the items.
walk()  : ExCollectionInterface
Applies the given callback function to each item in the collection.
cacheFreshen()  : PromiseInterface<string|int, static>

Properties

$class

Class type allowed into the collection.

protected string $class = \Discord\Parts\Channel\Channel::class

$discrim

The collection discriminator.

protected string $discrim = 'id'

Discriminator.

$items

The items contained in the collection.

protected array<string|int, mixed> $items = []

$vars

Variables that are related to the repository.

protected array<string|int, mixed> $vars = []

Variables.

Methods

__call()

This method checks if a method with the name "__Collection__{$name}" exists within the class. If it does, it calls that method with the provided arguments.

public __call(string $name, array<string|int, mixed> $arguments) : mixed

If the method does not exist, it throws a BadMethodCallException.

Previously, this class utilized parent::method to call methods from the parent class. This was changed to use the __Collection__method naming convention to avoid conflicts

Parameters
$name : string

The name of the method being called.

$arguments : array<string|int, mixed>

The arguments passed to the method.

Tags
throws
BadMethodCallException

If the method does not exist.

Return values
mixed

The result of the called method.

__construct()

AbstractRepository constructor.

public __construct(Discord $discord[, array<string|int, mixed> $vars = [] ]) : mixed
Parameters
$discord : Discord
$vars : array<string|int, mixed> = []

An array of variables used for the endpoint.

__debugInfo()

Returns an item that will be displayed for debugging.

public __debugInfo() : array<string|int, mixed>
Return values
array<string|int, mixed>

__serialize()

Returns the string representation of the collection.

public __serialize() : array<string|int, mixed>
Return values
array<string|int, mixed>

all()

Checks if all items match the callback.

public all(callable $callback) : bool
Parameters
$callback : callable
Return values
bool

any()

Checks if any item matches the callback.

public any(callable $callback) : bool
Parameters
$callback : callable
Return values
bool

count()

Counts the amount of objects in the collection.

public count() : int
Return values
int

create()

Builds a new, empty part.

public create([array<string|int, mixed>|object $attributes = [] ][, bool $created = false ]) : Part
Parameters
$attributes : array<string|int, mixed>|object = []

The attributes for the new part.

$created : bool = false
Tags
throws
Exception
Return values
Part

The new part.

delete()

Attempts to delete a part on the Discord servers.

public delete(Part|string $part[, string|null $reason = null ]) : PromiseInterface<string|int, Part>
Parameters
$part : Part|string

The part to delete.

$reason : string|null = null

Reason for Audit Log (if supported).

Tags
throws
Exception
Return values
PromiseInterface<string|int, Part>

diff()

Gets the difference between the items.

public diff(mixed $items[, callable|null $callback = null ]) : ExCollectionInterface

If a callback is provided and is callable, it uses array_udiff_assoc to compute the difference. Otherwise, it uses array_diff.

Parameters
$items : mixed
$callback : callable|null = null
Return values
ExCollectionInterface

fetch()

Gets a part from the repository or Discord servers.

public fetch(string $id[, bool $fresh = false ]) : PromiseInterface<string|int, Part>
Parameters
$id : string

The ID to search for.

$fresh : bool = false

Whether we should skip checking the cache.

Tags
throws
Exception
Return values
PromiseInterface<string|int, Part>

filter()

Runs a filter callback over the repository and returns a new collection based on the response of the callback.

public filter(callable $callback) : ExCollectionInterface
Parameters
$callback : callable
Tags
todo

This method will be typed to return an ExCollectionInterface in v11

Return values
ExCollectionInterface

find()

Runs a filter callback over the repository and returns the first part where the callback returns `true` when given the part.

public find(callable $callback) : Part|null
Parameters
$callback : callable
Return values
Part|null

null if no items returns true when called in the callback.

find_key()

Finds the key of the first item that matches the callback.

public find_key(callable $callback) : mixed
Parameters
$callback : callable

fresh()

Returns a part with fresh values.

public fresh(Part $part[, array<string|int, mixed> $queryparams = [] ]) : PromiseInterface<string|int, Part>
Parameters
$part : Part

The part to get fresh values.

$queryparams : array<string|int, mixed> = []

Query string params to add to the request (no validation)

Tags
throws
Exception
Return values
PromiseInterface<string|int, Part>

freshen()

Freshens the repository cache.

public freshen([array<string|int, mixed> $queryparams = [] ]) : PromiseInterface<string|int, static>
Parameters
$queryparams : array<string|int, mixed> = []

Query string params to add to the request (no validation)

Tags
throws
Exception
Return values
PromiseInterface<string|int, static>

from()

Creates a collection from an array.

public static from([array<string|int, mixed> $items = [] ][, string|null $discrim = 'id' ][, string|null $class = null ]) : ExCollectionInterface
Parameters
$items : array<string|int, mixed> = []
$discrim : string|null = 'id'
$class : string|null = null
Return values
ExCollectionInterface

get()

Gets a part from the repository.

public get(string $discrim, mixed $key) : Part|null
Parameters
$discrim : string
$key : mixed
Return values
Part|null

getIterator()

Returns an iterator for the cache.

public & getIterator() : Traversable
Return values
Traversable

has()

Checks if the array has an object.

public has(string|int ...$keys) : bool

Use async $repository->cache->has()

Parameters
$keys : string|int
Return values
bool

intersect()

Gets the intersection of the items.

public intersect(mixed $items[, callable|null $callback = null ]) : ExCollectionInterface

If a callback is provided and is callable, it uses array_uintersect_assoc to compute the intersection. Otherwise, it uses array_intersect.

Parameters
$items : mixed
$callback : callable|null = null
Return values
ExCollectionInterface

isset()

If the collection has an offset.

public isset(mixed $offset) : bool
Parameters
$offset : mixed
Return values
bool

jsonSerialize()

{@inheritDoc}

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

keys()

Get the keys of the items.

public keys() : array<string|int, int>|array<string|int, string>
Return values
array<string|int, int>|array<string|int, string>

merge()

Merges another collection into this collection.

public merge(mixed $collection) : self
Parameters
$collection : mixed
Return values
self

offsetExists()

If the repository has an offset.

public offsetExists(string|int $offset) : bool

Use async $repository->cache->has() This method is deprecated for userland code but can still be used internally within the library.

Parameters
$offset : string|int
Return values
bool

offsetGet()

Gets a part from the repository.

public offsetGet(string|int $offset) : Part|null

Use async $repository->cacheGet() or sync $repository->get() This method is deprecated for userland code but can still be used internally within the library.

Parameters
$offset : string|int
Return values
Part|null

offsetSet()

Sets a part into the repository.

public offsetSet(string|int $offset, Part|null $value) : void

Use async $repository->cache->set()

Parameters
$offset : string|int
$value : Part|null

offsetUnset()

Unsets an index from the repository.

public offsetUnset(string|int $offset) : void

Use async $repository->cache->delete()

Parameters
$offset : string|int

pull()

Pulls a part from the repository.

public pull(string|int $key[, mixed $default = null ]) : Part|mixed

Use async $repository->cachePull()

Parameters
$key : string|int
$default : mixed = null
Return values
Part|mixed

push()

Pushes items to the collection.

public push(mixed ...$items) : self
Parameters
$items : mixed
Return values
self

pushItem()

Pushes a single item to the repository.

public pushItem(Part $item) : self

Use async $repository->cache->set() This method is deprecated for userland code but can still be used internally within the library.

Parameters
$item : Part
Return values
self

save()

Attempts to save a part to the Discord servers.

public save(Part $part[, string|null $reason = null ]) : PromiseInterface<string|int, Part>
Parameters
$part : Part

The part to save.

$reason : string|null = null

Reason for Audit Log (if supported).

Tags
throws
Exception
Return values
PromiseInterface<string|int, Part>

Searches for a given value within the collection and returns the corresponding key if successful.

public search(mixed $needle[, bool $strict = false ]) : string|int|false
Parameters
$needle : mixed
$strict : bool = false

[optional]

Return values
string|int|false

serialize()

Returns the string representation of the collection.

public serialize([int $flags = 0 ][, int|null $depth = 512 ]) : string
Parameters
$flags : int = 0
$depth : int|null = 512
Return values
string

splice()

Splices the collection, removing a portion of the items and replacing them with the given replacement.

public splice(int $offset, int|null $length[, mixed $replacement = [] ]) : self
Parameters
$offset : int
$length : int|null
$replacement : mixed = []
Return values
self

toArray()

Converts the weak caches to array.

public toArray() : array<string|int, mixed>
Return values
array<string|int, mixed>

unserialize()

Unserializes the collection.

public unserialize(string $serialized) : void
Parameters
$serialized : string

values()

Get the values of the items.

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

cacheFreshen()

protected cacheFreshen(object $response) : PromiseInterface<string|int, static>
Parameters
$response : object
Return values
PromiseInterface<string|int, static>

        
On this page

Search results