v2.5.2
Giriş yap

bir fonksiyonu yeniden nasıl override edebilirim PHP ile

Anonim
485 defa görüntülendi ve 1 kişi tarafından değerlendirildi

bir fonksiyonum var adı test olsun, bu fonksiyonu int gelirse "int geldi" string gelirse "string geldi" yazmasını istiyorum.
bunu denedim çalışmıyor.


class ust_class extend CI_Model{
    public function test(int $deger){
        echo "int geldi";
    }
}

class alt_class extend ust_class{
    public function test(string $deger){
        echo "string geldi";
    }
}

bunları bu şekilde kullanmak istiyorum

$this->alt_class->test("test");
$this->alt_class->test(12345);

Çıktıları böyle olmalı:
"test geldi"
"int geldi"

nasıl yapabilirim?

makifgokce
1548 gün önce

override ile yapmana gerek yok bence bu şekilde çözebilirsin meseleyi

public function test($deger){
    if(is_int($deger)){
        echo "int geldi";
    } else if(is_string($deger)){
        echo "string geldi";
    } else if(is_float($deger)){
        echo "float";
    }
}