2009-08-03 9 views
2

J'ai été avec ce problème horrible pendant des heures, googled autant que je peux mais toujours malchanceux pour trouver la solution.Comment supprimer le commentaire de référence de synchronisation de CakePHP

Le problème est:

chaque page rendue par CakdPHP a un défaut de fuite commentaire de référence de synchronisation, tels que:

<html> 
    <head /> 
    <body /> 
</html> 
<!-- 3.4533s !--> 

Comment puis-je supprimer la dernière ligne, saisissez le code ici?

+4

3,45 secondes ?! Wow, vous avez une certaine optimisation à faire. ;) – deceze

Répondre

7
// core.php or anywhere else: 
Configure::write('debug', 0); 
+0

Merci beaucoup pour cette astuce! J'avais cherché sur Google pendant un certain temps avant ... –

+0

Celui qui vient de voter ceci m'a eu à 2500 rep. S'il vous plaît, ne votez pas sur mes affaires pendant un petit moment, c'est un bon nombre.^_^ – deceze

0

vous trouverez le ouput dans Webroot/index.php

simplement supprimer:

echo "<!-- " . round(getMicrotime() - $TIME_START, 4) . "s -->"; 

à la fin du fichier.

+0

Il est utile d'avoir à des fins de débogage, vous ne devriez vraiment pas le supprimer complètement. Si vous devez le désactiver parce que, par exemple, vous produisez du code XML, utilisez The Intended Way ™ pour le faire. – deceze

0

Tour de débogage.

Dans les applications lourdes AJAX, je m'assure que j'utilise le composant gestionnaire de requêtes en le plaçant dans la liste des composants de tout contrôleur qui répondra aux requêtes AJAX.

if ($this->RequestHandler->isAjax()) { 
    Configure::write('debug', 0); 
} 
0

Une autre option est d'écho manuellement le rendu, puis quitte la demande: méthode du contrôleur

var $components = array('RequestHandler'); 

Je mets alors cela le beforeFilter(). Puisque l'appel de _stop() met fin à votre requête, assurez-vous de ne rien faire après le rendu.

function some_action() { 
    echo($this->render()); 
    $this->_stop(); 
} 
Questions connexes