## Class TPropertyValue

Description

TPropertyValue class

TPropertyValue is a utility class that provides static methods to convert component property values to specific types.

TPropertyValue is commonly used in component setter methods to ensure the new property value is of specific type. For example, a boolean-typed property setter method would be as follows,

     function setPropertyName($value) {
         $value=TPropertyValue::ensureBoolean($value);
         // $value is now of boolean type
     }

Properties can be of the following types with specific type conversion rules:

- string: a boolean value will be converted to 'true' or 'false'.
- boolean: string 'true' (case-insensitive) will be converted to true, string 'false' (case-insensitive) will be converted to false.
- integer
- float
- array: string starting with '(' and ending with ')' will be considered as as an array expression and will be evaluated. Otherwise, an array with the value to be ensured is returned.
- object
- enum: enumerable type, represented by an array of strings.

- since: 3.0
- version: $Revision: $ $Date: $
- author: Qiang Xue <qiang.xue@gmail.com>

Located in /TComponent.php (line 450)

Method Summary
array ensureArray (mixed $value)
boolean ensureBoolean (mixed $value)
string ensureEnum (mixed $value, mixed $enums)
float ensureFloat (mixed $value)
integer ensureInteger (mixed $value)
object ensureObject (mixed $value)
string ensureString (mixed $value)
Methods
ensureArray (line 512)

Converts a value to array type. If the value is a string and it is

in the form (a,b,c) then an array consisting of each of the elements will be returned. If the value is a string and it is not in this form then an array consisting of just the string will be returned. If the value is not a string then

- static:
- access: public

array ensureArray (mixed $value)

- mixed $value: the value to be converted.

ensureBoolean (line 460)

Converts a value to boolean type.

Note, string 'true' (case-insensitive) will be converted to true, string 'false' (case-insensitive) will be converted to false. If a string represents a non-zero number, it will be treated as true.

- static:
- access: public

boolean ensureBoolean (mixed $value)

- mixed $value: the value to be converted.

ensureEnum (line 552)

Converts a value to enum type.

This method mainly performs sanity check of a value to make sure it is a valid enumeration value. Each enumeration value is a string which is case-sensistive.

- return: the valid enumeration value
- static:
- access: public
- throws: TInvalidDataValueException if the original value is not in the string array.

string ensureEnum (mixed $value, mixed $enums)

- mixed $value: the value to be converted.
- mixed $enums: array of valid enumeration values. If this is not an array, the method considers its parameters are of variable length, and the second till the last parameters are enumeration values.

ensureFloat (line 498)

Converts a value to float type.

- static:
- access: public

float ensureFloat (mixed $value)

- mixed $value: the value to be converted.

ensureInteger (line 488)

Converts a value to integer type.

- static:
- access: public

integer ensureInteger (mixed $value)

- mixed $value: the value to be converted.

ensureObject (line 535)

Converts a value to object type.

- static:
- access: public

object ensureObject (mixed $value)

- mixed $value: the value to be converted.

ensureString (line 475)

Converts a value to string type.

Note, a boolean value will be converted to 'true' if it is true and 'false' if it is false.

- static:
- access: public

string ensureString (mixed $value)

- mixed $value: the value to be converted.

Documentation generated on Mon, 01 May 2006 23:03:00 -0400 by phpDocumentor 1.3.0RC4