| Package | system.utils |
|---|---|
| Inheritance | class CPropertyValue |
| Since | 1.0 |
| Version | $Id$ |
| Source Code | framework/utils/CPropertyValue.php |
public function setPropertyName($value)
{
$value=CPropertyValue::ensureBoolean($value);
// $value is now of boolean type
}
| Method | Description | Defined By |
|---|---|---|
| ensureArray() | Converts a value to array type. If the value is a string and it is | CPropertyValue |
| ensureBoolean() | Converts a value to boolean type. | CPropertyValue |
| ensureEnum() | Converts a value to enum type. | CPropertyValue |
| ensureFloat() | Converts a value to float type. | CPropertyValue |
| ensureInteger() | Converts a value to integer type. | CPropertyValue |
| ensureObject() | Converts a value to object type. | CPropertyValue |
| ensureString() | Converts a value to string type. | CPropertyValue |
|
public static array ensureArray(mixed $value)
| ||
| $value | mixed | the value to be converted. |
| {return} | array | |
public static function ensureArray($value)
{
if(is_string($value))
{
$value = trim($value);
$len = strlen($value);
if ($len >= 2 && $value[0] == '(' && $value[$len-1] == ')')
{
eval('$array=array'.$value.';');
return $array;
}
else
return $len>0?array($value):array();
}
else
return (array)$value;
}
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
|
public static boolean ensureBoolean(mixed $value)
| ||
| $value | mixed | the value to be converted. |
| {return} | boolean | |
public static function ensureBoolean($value)
{
if (is_string($value))
return !strcasecmp($value,'true') || $value!=0;
else
return (boolean)$value;
}
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.
|
public static string ensureEnum(string $value, string $enumType)
| ||
| $value | string | the enumerable value to be checked. |
| $enumType | string | the enumerable class name (make sure it is included before calling this function). |
| {return} | string | the valid enumeration value |
public static function ensureEnum($value,$enumType)
{
static $types=array();
if(!isset($types[$enumType]))
$types[$enumType]=new ReflectionClass($enumType);
if($types[$enumType]->hasConstant($value))
return $value;
else
throw new CException(Yii::t('yii','Invalid enumerable value "{value}". Please make sure it is among ({enum}).',
array('{value}'=>$value, '{enum}'=>implode(', ',$types[$enumType]->getConstants()))));
}
Converts a value to enum type.
This method checks if the value is of the specified enumerable type.
A value is a valid enumerable value if it is equal to the name of a constant
in the specified enumerable type (class).
For more details about enumerable, see CEnumerable.
|
public static float ensureFloat(mixed $value)
| ||
| $value | mixed | the value to be converted. |
| {return} | float | |
public static function ensureFloat($value)
{
return (float)$value;
}
Converts a value to float type.
|
public static integer ensureInteger(mixed $value)
| ||
| $value | mixed | the value to be converted. |
| {return} | integer | |
public static function ensureInteger($value)
{
return (integer)$value;
}
Converts a value to integer type.
|
public static object ensureObject(mixed $value)
| ||
| $value | mixed | the value to be converted. |
| {return} | object | |
public static function ensureObject($value)
{
return (object)$value;
}
Converts a value to object type.
|
public static string ensureString(mixed $value)
| ||
| $value | mixed | the value to be converted. |
| {return} | string | |
public static function ensureString($value)
{
if (is_bool($value))
return $value?'true':'false';
else
return (string)$value;
}
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.
Signup or Login in order to comment.