PHP数组问题

转换为数组

对于任意 integer float string booleanresource 类型,如果将一个值转换为数组,将得到一个仅有一个元素的数组,其下标为 0,该元素即为此标量的值。换句话说,(array)$scalarValuearray($scalarValue) 完全一样。

如果一个 object 类型转换为 array ,则结果为一个数组,其单元为该对象的属性。键名将为成员变量名,不过有几点例外:整数属性不可访问;私有变量前会加上类名作前缀;保护变量前会加上一个 '*' 做前缀。这些前缀的前后都各有一个 NULL 字符。这会导致一些不可预知的行为:

<?php



 class  A  {

    private  $E ;  // This will become '\0A\0A'

 }



class  B  extends  A  {

    private  $A ;  // This will become '\0B\0A'

    protected $C;

     public  $AA ;  // This will become 'AA'

 }

 var_dump ((array) new  B ());

 ?> 

 

你可能感兴趣的:(PHP)