Dans un module, le front-end est extjs et le back-end est php. Une erreur est signalée lorsque l'avertissement d'erreur de php est activé au plus strict bien que le programme puisse s'exécuter. , l'accumulation de journaux devient de plus en plus grande.
<span style="color:rgb(0,0,0); font-family:Consolas, Inconsolata, Courier, monospace;font-size:12px; background-color:rgb(255,255,255);">Undefined variable:loginUserName </span>
<script> Ext.onReady(function () { var app = Ext.create("PSI.App", { // userName: "{$loginUserName}", productionName: "{$productionName}" }); }); </script>
Backend php :
/** * 业务日志 - 主页面 */ public function index() { $us = new UserService(); if ($us->hasPermission(FIdConst::USE_ORDER)) { $this->initVar(); // $this->assign("loginUserName", "tom"); $this->display(); } else { $this->gotoLoginPage("/Home/"); } }
avant et après avoir commenté loginUserName côté client, pourquoi ai-je toujours une erreur ?
J'ai retrouvé le cache des pages de thinkphp et j'ai trouvé cette ligne dans
js :
// userName: "{$loginUserName}",
correspond à cette ligne dans le code php mis en cache :
// userName: "<?php echo ( $loginUserName); ?>",
Bien qu'il y ait des commentaires dans le js, il n'y a pas beaucoup de contrôle dans le code php pour le moment, tant as < ?php ?>Le contenu à l'intérieur doit être analysé,
À ce stade, cette ligne dans la page php est commentée :
// $this->assign("loginUserName", "tom");
Donc, elle est introuvable lorsque analyse de la page frontale Lorsque j'arrive à $loginUserName, j'obtiens une erreur.
Solution :
Supprimez simplement cette ligne dans le code js :
// userName: "{$loginUserName}",
Recommandations associées :
Utiliser JS en PHP pour afficher des messages d'erreur tronqués
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!