Maison > Article > développement back-end > Le code ne peut pas être utilisé après la mise à niveau de la version PHP
Le code ne peut pas être utilisé après la mise à niveau de la version PHP
Une fois la version PHP mise à niveau, le code ne peut pas être utilisé principalement en raison de la différence entre les versions. Les incompatibilités causées par les différences entre les versions, telles que les changements de syntaxe dans les versions supérieures et la dépréciation de certaines fonctions, provoqueront des erreurs d'exécution du programme. Pour résoudre ces problèmes, vous ne pouvez déboguer le programme que étape par étape. . Voici comment Déboguer le programme et rendre le code compatible avec notre version supérieure de PHP.
1 Sortie d'impression
Utilisez echo, var_dump, print_r et d'autres méthodes pour imprimer où le débogage est requis En affichant la valeur d'une variable spécifique, vous pouvez déterminer. si le programme est exécuté correctement.
2 Utilisez la fonction debug_backtrace pour imprimer les informations de la pile d'appels :
debug_print_backtrace();exit; #0 cli_rakuten->getOrders(1) #1 call_user_func_array(Array ([0] => cli_rakuten Object (),[1] => getOrders), Array ([0] => 1)) called at [/data/project/***/include/of/of.php:79] #2 of::cliDispatch(cli_rakuten, getOrders, 1, Array ([0] => 1)) called at [/data/project/***/cli.php:17]
3 Utilisez xdebug pour déboguer le code
Xdebug est un open source Le débogueur de programme PHP du code (c'est-à-dire un outil de débogage) peut être utilisé pour suivre, déboguer et analyser l'état d'exécution des programmes PHP.
Après avoir configuré phpstorm+xdebug, vous pouvez facilement déboguer le code avec des points d'arrêt.
En plus de générer des informations sur la pile d'appels, xdebug peut également générer des rapports d'analyse des performances. WinCacheGrind peut être utilisé sous Windows pour afficher des rapports d'analyse des performances.
4 Utilisez xhprof pour déboguer et analyser le code
XHProf est une extension développée par Facebook pour tester les performances de PHP.
Pour un environnement de développement local, xdebug suffit pour l'analyse des performances, mais s'il s'agit d'un environnement en ligne, xdebug consomme beaucoup d'argent et la configuration n'est pas assez flexible. Par conséquent, il est recommandé d'utiliser xhprof pour PHP. performances dans un environnement en ligne.
Ajoutez le code pour générer le rapport d'analyse xhprof dans le code :
xhprof_enable( XHPROF_FLAGS_MEMORY|XHPROF_FLAGS_CPU, [ 'ignored_functions' => [ 'call_user_func', 'call_user_func_array' ] ]); //这里是业务代码 //... $xhprofData = xhprof_disable(); require '/data/soft/xhprof/xhprof_lib/utils/xhprof_lib.php'; require '/data/soft/xhprof/xhprof_lib/utils/xhprof_runs.php'; $xhprofRuns = new XHProfRuns_Default(); $runId = $xhprofRuns->save_run($xhprofData, 'xhprof_test'); echo 'http://192.168.52.129:8888/xhprof_html/index.php?run=' . $runId . '&source=xhprof_test'.PHP_EOL;
5 Débogage basé sur le journal des erreurs php
journal du journal, généralement des enregistrements d'exploitation des systèmes, des logiciels et des applications. Grâce à l'analyse des journaux, les utilisateurs peuvent facilement comprendre l'état de fonctionnement du système, des logiciels et des applications ; si votre journal d'application est suffisamment riche, vous pouvez également analyser les comportements de fonctionnement des anciens utilisateurs, leurs préférences de type, leur répartition géographique ou d'autres informations supplémentaires ; Le journal d'une application est également divisé en plusieurs niveaux, afin que vous puissiez facilement analyser l'état de santé de l'application, découvrir les problèmes en temps opportun, localiser et résoudre rapidement les problèmes et remédier aux pertes.
Le journal des erreurs php peut être défini dans le fichier de configuration php.ini :
log_errors = On error_log = /var/log/php-fpm/php_errors.log
Après avoir trouvé la cause de l'erreur, nous pouvons apporter les modifications correspondantes au programme.
Pour plus de connaissances sur PHP, veuillez visiter le Site Web PHP chinois !
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!