J'ai rencontré un problème lors de l'utilisation des appels en chaîne PHP :
Il y a une classe "Site" ci-dessous :
<?php
class Site{
public function api(){
require('class.Api.php');
$this->api = new Api();
return $this->api;
}
}
?>
Il existe également une classe "Api" située dans "class.Api.php" :
<?php
class Api{
public function auth(){
//quiet a few
}
public function render(){
//quiet a few
}
}
?>
Instanciez avec le code suivant :
$site = new Site();
Appelez à nouveau le code suivant :
$site->api()->auth();
$site->api()->render();
PHP répétera-t-il require() et créera-t-il une nouvelle API d'objet ? Si tel est le cas, require() peut être remplacé par require_once(), mais comment faire en sorte que "$site->api()" renvoie le même objet ? Merci!
Mode cas unique.
C'est juste une écriture simple, mais elle nécessite encore beaucoup d'optimisation.