From: Erol Soyöz (erol@nerdology.org)
Date: Sun 10 Dec 2006 - 21:22:35 GMT
Düşündüğünüz tarzda bir kullanım mevcut değil. Nesnenizi
oluşturduğunuz(instance)
anda, içerideki metodların yada değişkenlerin kullanımı için parametre
ataması
gerçekleştirmek istiyorsanız, bunu constructer kısmında
gerçekleştirebilirsiniz.
Şöyle ki;
class dog {
public $Param1;
public $Param2;
public function __construct($Param1, $Param2){
$this->Param1 = $Param1;
$this->Param2 = $Param2;
}
public function getParam(){
echo $this->Param1."<br />";
echo $this->Param2;
}
}
$Dog = new Dog("Parametre_1", "Parametre_2");
$Dog->getParam();
Bu işlemin çıktısı;
Parametre_1
Parametre_2
şeklinde olacaktır.
Bu şekilde, nesne örneğini oluştururken, bir değer atama işlemi
gerçekleştirmeniz mümkün.
Erkin Tek wrote:
>Şöyle bir örnek var, meow diye bir fonksiyon olmadığından __call çalışacak:
><?php
> class dog {
> public $Name;
> public function __call($function, $args) {
> $args = implode(', ', $args);
> print "Call to $function() with args '$args' failed!\n";
> }
> }
>
> $poppy = new dog;
> $poppy->meow("foo", "bar", "baz");
> ?>
>Çok güzel, "Call to meow() with args 'foo, bar, baz' failed!" şeklinde hatamı
>verdi. Fakat benim istediğim nesnemi fonksiyon gibi kullanmak:
>
>$poppy->meow("foo", "bar", "baz");
>kısmını
>$poppy("foo", "bar", "baz");
>şekline getirince
> Fatal error: Function name must be a string
>in /var/www/cenaze/cache/deneme.php on line 20
>diyip beni üzüyor :(
>
>Yılmadan devam ediyorum:
> function __toString(){
> return "__call";
> }
>fakat hâlâ bana
> Fatal error: Function name must be a string
>in /var/www/cenaze/cache/deneme.php on line 20
>diyor :(
>ben nesnemi $poppy($bişiy); şeklinde çağıramaz mıyım?
>
>Teşekkürler
>
>
--Erol Soyöz
_______________________________________________ Linux-programlama mailing list Linux-programlama@liste.linux.org.tr http://liste.linux.org.tr/mailman/listinfo/linux-programlama