2012-07-02 22 views
5

PHP'de, özellikle de CodeIgniter'de işlevleri aşırı yüklerseniz merak ediyorum. Mesela benim denetleyicimde bir görünüm yüklemek zorunda kaldım, ancak bir değişkenin parametre olarak mı yoksa boş bırakılmış mı olduğu farklıdır. ...CodeIgniter'de İşlev Aşırı Yüklemesi

:

<?php 
    function load_view(){ 
    $this->load->view('view'); 
    } 

    function load_view($var){ 
    $this->load->model('data'); 
    $data = $this->data->getInfo($var); 
    $this->load->view('view', $data); 
    } 
?> 

Ama bu çalıştığında, bir hata "Controller :: load_view redeclare Can Ölümcül hata" olsun: Bu benim diğer dillerde öğrenilen nasıl Denedim kavramdır

Herhangi bir yardım büyük takdir edilecektir. Şimdiden teşekkürler!

cevap

9

PHP'de aşırı yüklenme işlevleri için isteğe bağlı parametreleri kullanın. Bir örnek:

function load_view($var = null) { 
    if (!empty($var)) { 
     $this->load->model('data'); 
     $data = $this->data->getInfo($var); 
     $this->load->view('view', $data); 
    } else { 
     $this->load->view('view'); 
    } 
} 
+0

Bu bir çekicilik gibi çalıştı! Teşekkürler! – nickcorin