$ Daha iyi açıklama bu->

4 Cevap php

Bu soruya değinen: http://stackoverflow.com/questions/2035449/why-is-oop-hard-for-me

class Form
{
    protected $inputs = array();
    public function makeInput($type, $name)
    {
         echo '<input type="'.$type.'" name="'.$name.'">';
    }

    public function addInput($type, $name)
    {
         $this->inputs[] = array("type" => $type,
                "name" => $name);
    }

    public function run()
   {
       foreach($this->inputs as $array)
       { 
          $this->makeInput($array['type'], $array['name'];
       }
    }
}

$form = new form();

$this->addInput("text", "username");
$this->addInput("text", "password");**

Ben $this->input[] bu bölümünde ne yaptığını daha iyi bir açıklama elde edebilirsiniz:

public function addInput($type, $name)
        {
             $this->inputs[] = array("type" => $type,
                    "name" => $name);
        }

4 Cevap

Bu sınıf / nesnesinin örneğin o varible dile giriş yapıyor. O halde size yazarak sınıfının yeni bir örneğini oluşturmak diyelim $something = new Form();. Şimdi $ şey-> işlevadı () ile çağırarak sınıfta bir işlevi kullandığınızda; Bu derken fonksiyon $ şey örneğine refence olacaktır. Bu gibi objelerle büyük şey fonksiyonları birbirlerinin varibles ulaşabiliyor.

Sınıfının en doğru tanımlandığı gibi, $this->inputs bir dizidir. PHP, sen dizi adından sonra [] koyarak ve buna atayarak bir dizi eklenecek. Yani, $this->inputs için ekleme edilir.

$this->inputs[] = array("type" => $type, "name" => $name);

kendisi iki unsur index "tip" ile tek ve indeks "adı" ile diğer) ile bir dizi dizi Doları sonunda yerlerde bu-> girişler yeni eleman

Eklenen elemanın endeksi bu-> mevcut giriş kadar artı bir dizi Doları en yüksek sayısal endeksidir.

$ Bu sınıf Form ve nesne oluşturulur boş bir dizi olur bu nesnenin inputs korunan alanın bir nesnedir.

$this->inputs = new array() geçerli nesne inputs değişkeni tanımlar.