kohana中的数组到对象

时间:2011-04-14 10:07:16

标签: php kohana

我正在寻找将数组转换为kohana中的对象的方法我得到了这个

http://docs.kohanaphp.com/helpers/arr#to_object

但这种方法在kohana 3.1中不起作用。 这个功能的新替代品是什么?

3 个答案:

答案 0 :(得分:6)

你可以使用PHP的type casting手动完成(有类型转换的标题较低):

$array = array('a' => 'c', 'b' => 'd');
$obj = (object)$array;

echo $obj->a; // c

答案 1 :(得分:0)

如果它是一维数组,只需使用object

将其强制转换为$obj = (object)$array;

答案 2 :(得分:0)

您可以覆盖Arr类。

  1. 创建文件APPPATH / classes / arr.php:

  2. 添加新方法:

    class Arr extends Kohana_Arr {
    
    public static function to_object(array $array, $class = 'stdClass')
    {
            $object = new $class;
            foreach ($array as $key => $value)
            {
                    if (is_array($value))
                    {
                    // Convert the array to an object
                            $value = arr::to_object($value, $class);
                    }
                    // Add the value to the object
                    $object->{$key} = $value;
            }
            return $object;
    }
    

    }