MediaWiki  1.34.0
Wikimedia\ParamValidator\TypeDef\StringDef Class Reference

Type definition for string types. More...

Inheritance diagram for Wikimedia\ParamValidator\TypeDef\StringDef:
Collaboration diagram for Wikimedia\ParamValidator\TypeDef\StringDef:

Public Member Functions

 __construct (Callbacks $callbacks, array $options=[])
 
 validate ( $name, $value, array $settings, array $options)
 Validate the value. More...
 
- Public Member Functions inherited from Wikimedia\ParamValidator\TypeDef
 __construct (Callbacks $callbacks)
 
 describeSettings ( $name, array $settings, array $options)
 "Describe" a settings array More...
 
 getEnumValues ( $name, array $settings, array $options)
 Get the values for enum-like parameters. More...
 
 getValue ( $name, array $settings, array $options)
 Get the value from the request. More...
 
 normalizeSettings (array $settings)
 Normalize a settings array. More...
 
 stringifyValue ( $name, $value, array $settings, array $options)
 Convert a value to a string representation. More...
 

Public Attributes

const PARAM_MAX_BYTES = 'param-max-bytes'
 (integer) Maximum length of a string in bytes. More...
 
const PARAM_MAX_CHARS = 'param-max-chars'
 (integer) Maximum length of a string in characters (Unicode codepoints). More...
 

Protected Attributes

 $allowEmptyWhenRequired = false
 
- Protected Attributes inherited from Wikimedia\ParamValidator\TypeDef
Callbacks $callbacks
 

Detailed Description

Type definition for string types.

The result from validate() is a PHP string.

ValidationException codes:

  • 'missingparam': The parameter is the empty string (and that's not allowed). No data.

Additional codes may be generated when using certain PARAM constants. See the constants' documentation for details.

Since
1.34 @unstable

Definition at line 24 of file StringDef.php.

Constructor & Destructor Documentation

◆ __construct()

Wikimedia\ParamValidator\TypeDef\StringDef::__construct ( Callbacks  $callbacks,
array  $options = [] 
)
Parameters
Callbacks$callbacks
array$optionsOptions:
  • allowEmptyWhenRequired: (bool) Whether to reject the empty string when PARAM_REQUIRED. Defaults to false.

Definition at line 56 of file StringDef.php.

References Wikimedia\ParamValidator\TypeDef\$callbacks.

Member Function Documentation

◆ validate()

Wikimedia\ParamValidator\TypeDef\StringDef::validate (   $name,
  $value,
array  $settings,
array  $options 
)

Validate the value.

When ParamValidator is processing a multi-valued parameter, this will be called once for each of the supplied values. Which may mean zero calls.

When getValue() returned null, this will not be called.

Parameters
string$nameParameter name being validated.
mixed$valueValue to validate, from getValue().
array$settingsParameter settings array.
array$optionsOptions array. Note the following values that may be set by ParamValidator:
  • values-list: (string[]) If defined, values of a multi-valued parameter are being processed (and this array holds the full set of values).
Returns
mixed Validated value
Exceptions
ValidationExceptionif the value is invalid

Reimplemented from Wikimedia\ParamValidator\TypeDef.

Definition at line 62 of file StringDef.php.

References Wikimedia\ParamValidator\ParamValidator\PARAM_REQUIRED.

Member Data Documentation

◆ $allowEmptyWhenRequired

Wikimedia\ParamValidator\TypeDef\StringDef::$allowEmptyWhenRequired = false
protected

Definition at line 48 of file StringDef.php.

◆ PARAM_MAX_BYTES

const Wikimedia\ParamValidator\TypeDef\StringDef::PARAM_MAX_BYTES = 'param-max-bytes'

(integer) Maximum length of a string in bytes.

ValidationException codes:

  • 'maxbytes': The string is too long. Data:
    • 'maxbytes': The maximum number of bytes allowed
    • 'maxchars': The maximum number of characters allowed

Definition at line 34 of file StringDef.php.

◆ PARAM_MAX_CHARS

const Wikimedia\ParamValidator\TypeDef\StringDef::PARAM_MAX_CHARS = 'param-max-chars'

(integer) Maximum length of a string in characters (Unicode codepoints).

The string is assumed to be encoded as UTF-8.

ValidationException codes:

  • 'maxchars': The string is too long. Data:
    • 'maxbytes': The maximum number of bytes allowed
    • 'maxchars': The maximum number of characters allowed

Definition at line 46 of file StringDef.php.


The documentation for this class was generated from the following file: