Codeigniter 2.0 MY_Router.php fout

Ik heb het bestand MY_Router.php in de kerndirectory gemaakt met deze code:

<?php
class MY_Router extends CI_Router {

    function MY_Router()
    {
        parent::CI_Router();
    }

    function _validate_request($segments)
    {
       //Comprueba que el controlador no existe
        if (!file_exists(APPPATH.'controllers/'.$segments[0].EXT))
        {
            $segments = array("page", "load", $segments[0]);

        }
        return parent::_validate_request($segments);
    }
}
?>

Wanneer ik de toepassing bel, verschijnt deze foutmelding:

Fatale fout: oproep naar de ongedefinieerde methode CI_Router :: CI_Router() in /home/david/public_html/CodeIgniter_2.1.0/application/core/MY_Router.php op regel 6

Waar is het probleem?

1

1 antwoord

Het probleem is dat er geen methode is in de CI_Router-klasse met de naam CI_Router() . In PHP4 hebben constructeurs dezelfde naam als de klasse. In PHP5 krijgen construcnaarrs de naam __ construct() .

Om het probleem te verhelpen, wijzigt u de construcnaarr in de klasse MY_Router van

function MY_Router()
{
    parent::CI_Router();
}

naar

function __construct()
{
    parent::__construct();
}
6
toegevoegd
Het werkt. Hartelijk bedankt. Ik ben codeigniter newbie: p
toegevoegd de auteur David, de bron