Ben bir başlangıç değeri vermek istemiyorum. Ben set yöntemini kullanarak daha sonra bu ayarlamak istiyorum
class Duck {
var int id;
var set = Array();
}
Nasıl hata almadan beyan herhangi bir fikir?
Sizin soru PHP işaretlenmiş ama bildiğim herhangi bir PHP gibi görünmüyor. Bu doğru PHP:
class Duck {
private $id;
private $set = array();
}
Sen $set olarak bu örnekte ama bu sadece 0 standart varsayılan değerini alır demektir, false, array() için bir başlangıç değerini belirtmek gerekmez , vb ben size ulaşmak için çalışıyoruz ne emin değilim nasıl kullanıldıklarını bağlı.
Genellikle açık olmak daha iyi.
Bir yöntem Typ kontrol edilebilir;
private $props = array();
static $types = array ("id" => "is_integer","name" => "is_string");
public function __set($name,$value)
{
if(array_key_exists($name, self::$types))
{
if(call_user_func(self::$types[$name],$value))
{
$this->props[$name] = $value;
}
else
{
print "Type assignment error\n";
debug_print_backtrace();
}
}
}