其他使用参考:

Table des matières
Toy Production
===================================
参考
KCacheGrind windows 系統下的代替方案
Maison php教程 php手册 php扩展xdebug安装以及用kcachegrind系统分析

php扩展xdebug安装以及用kcachegrind系统分析

Jun 06, 2016 pm 07:54 PM
php xdebug 安装 扩展

一:安装 安装方法一:编译安装 1、下载PHP的XDebug扩展,网址:http://xdebug.org/ # wget http://pecl.php.net/get/xdebug-2.1.2.tgz # tar -xzf xdebug-2.1.2.tgz # xdebug-2.1.2 # cd xdebug-2.1.2 # /usr/local/php/bin/phpize # ./configure --enable-

一:安装

安装方法一:编译安装

 

1、下载PHP的XDebug扩展,网址:http://xdebug.org/
# wget http://pecl.php.net/get/xdebug-2.1.2.tgz
# tar -xzf xdebug-2.1.2.tgz
# xdebug-2.1.2
# cd xdebug-2.1.2
# /usr/local/php/bin/phpize
# ./configure --enable-xdebug --with-php-config=/usr/local/php/bin/php-config
# make && make install

php扩展xdebug安装以及用kcachegrind系统分析

不需要自己拷贝xdebug.so了,下面可以省。
# cp modules/xdebug.so /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613

注:/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/不同的PHP版本路径不同,也不一定要放在该路径,可以在zend_extension_ts中自行指定xdebug.so所在位置。

================================================

安装方法二:自动安装

http://pecl.php.net/package/xdebug

 

#  /usr/local/php/bin/pecl install xdebug 

安装成功

php扩展xdebug安装以及用kcachegrind系统分析

 

windows下安装:

需要注意使用custom installation instructions. 将你的phpinfo生成的内容放进去测试 看看下载那个dll

===============================================

二:修改php配置模块

1.配置

修改php.ini,去除PHP加速模块,增加以下配置信息支持XDebug扩展

手动安装

[Xdebug]  
zend_extension_ts="/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so" 

xdebug.profiler_enable=on 
xdebug.trace_output_dir="/tmp/xdebug" 
xdebug.profiler_output_dir="/tmp/xdebug" 


 

自动安装

[Xdebug]

extension=xdebug.so

xdebug.profiler_enable=on
xdebug.trace_output_dir="/tmp/xdebug"
xdebug.profiler_output_dir="tmp/xdebug"

 

Windows下配置 

 用phpinfo()查看php配置文件位置,增加:

extension=php_xdebug-2.2.0-5.3-vc9.dll

[Xdebug]

;开启自动跟踪
xdebug.auto_trace = On
;开启异常跟踪
xdebug.show_exception_trace = On
;开启远程调试自动启动
xdebug.remote_autostart = On
;开启远程调试
xdebug.remote_enable = On
;收集变量
xdebug.collect_vars = On
;收集返回值
xdebug.collect_return = On
;收集参数
xdebug.collect_params = On

xdebug.remote_enable=on
xdebug.remote_handler=dbgp
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000  

xdebug.profiler_enable=on
;xdebug.trace_output_name="%H.%s"
xdebug.trace_output_dir="E:\PHPnow\xdebug"
xdebug.profiler_output_dir="E:\PHPnow\xdebug"
Copier après la connexion


 

------------------------------

2.权限

mkdir -p /tmp/xdebug
chmod 755 /tmp/xdebug
chown www:www /tmp/xdebug

-----------------------------

3.重启
/usr/local/apache/bin/apachectl  restart

 php扩展xdebug安装以及用kcachegrind系统分析

说明:如果phpinfo()没有打印这个信息说明没有配置正确!

------------------------------

4.停用

说明:如果不分析系统一定要记得关闭xdebug.profiler不然会生成许多文件

xdebug.profiler_enable=off

 ====================================

三:分析系统

1.访问你的网站

将首页上各种链接点击几遍,XDebug在/tmp/xdebug目录生成文件

 

2.使用图形分析工具wincachedgrind分析生成的文件

下载地址:http://sourceforge.net/projects/wincachegrind/files/

php扩展xdebug安装以及用kcachegrind系统分析

 

3.下载图形化工具kcachegrind在windows下的可执行版

下载地址http://sourceforge.net/projects/precompiledbin/files

 

用kcachegrind来看会更形象,注意需要修改从linux中执行的文件的php文件路径,这样就可以了sourcecode.

 

php扩展xdebug安装以及用kcachegrind系统分析

查看代码执行顺序

php扩展xdebug安装以及用kcachegrind系统分析

 

 更复杂的代码:

<?php define( 'BOOSTER', 5 );
    define( 'CAPSULE', 2 );
    define( 'MINUTE', 60 );
    define( 'STAGE', 3 );
    define( 'PRODUCTION', 1000 );
    
    class Part {
        function Part() {
            $this->build( MINUTE );
        }
        
        function build( $delay = 0 ) {
            if ( $delay  0 ) {
            }
        }
    }
    
    class Capsule extends Part {
        function Capsule() {
          parent::Part();
            $this->build( CAPSULE * MINUTE );
        }
    }
    
    class Booster extends Part {
        function Booster() {
          parent::Part();
            $this->build( BOOSTER * MINUTE );
        }
    }
    
    class Stage extends Part {
        function Stage() {
          parent::Part();
          $this->build( STAGE * MINUTE );
        }
    }
    
    class SpaceShip {
        var $booster;
        var $capsule; 
        var $stages;
        
        function SpaceShip( $numberStages = 3 ) {
            $this->booster = new Booster();
            $this->capsule = new Capsule();
            $this->stages = array();
            
            while ( $numberStages-- >= 0 ) {
                $stages[$numberStages] = new Stage();
            }
        }
    }
    
    $toys = array();
    $count = PRODUCTION;
    
    while ( $count-- >= 0  ) {
      $toys[] = new SpaceShip( 2 );
    }
?>



<title>
Toy Factory Output
</title>


  <h1 id="Toy-Production">Toy Production</h1>
  <p>Built  echo PRODUCTION . ' toys' ?></p>


 

Copier après la connexion


分析日志

php扩展xdebug安装以及用kcachegrind系统分析

 

其他使用参考:xdebug基本使用

===================================

参考

"

为 PHP 应用提速、提速、再提速!,第 2 部分: 分析 PHP 应用程序以查找、诊断和加速运行缓慢的代码

http://www.ibm.com/developerworks/cn/opensource/os-php-fastapps2/index.html

 

http://hi.baidu.com/%D4%E7%B9%C8%C9%E7%C7%F8/blog/item/d8fedafb7843c66b024f56cb.html

 

使用Xdebug跟踪代码执行

http://book.51cto.com/art/200906/126516.htm

KCacheGrind windows 系統下的代替方案

  1. WinCacheGrind
  2. 可分析由xdebug產出的cachegrind.xxx檔,簡易版的kcachegrind。

  3. windows port of kcachegrind
  4. 由原linux的kcachegrind,重新編譯在windows上可執行版,功能與linux kcachegrind相同。

  5. Webgrind
  6. 網頁版的callgrind,搭配xdebug可做即時線上做php script profile。

     

     

 

=================================== 

NetBeans配置Xdebug

http://blog.csdn.net/21aspnet/article/details/6754034

===================================

另外还有一个扩展也很好:

http://pecl.php.net/package/xhprof

安装参考:

http://www.phpv5.com/blog/archives/66

 

参考:

用 kcachegrind 调优 squid 2.7 笔记

http://blog.sunyixing.com/archives/378

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Configuration du projet CakePHP Configuration du projet CakePHP Sep 10, 2024 pm 05:25 PM

Dans ce chapitre, nous comprendrons les variables d'environnement, la configuration générale, la configuration de la base de données et la configuration de la messagerie dans CakePHP.

Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Date et heure de CakePHP Date et heure de CakePHP Sep 10, 2024 pm 05:27 PM

Pour travailler avec la date et l'heure dans cakephp4, nous allons utiliser la classe FrozenTime disponible.

Téléchargement de fichiers CakePHP Téléchargement de fichiers CakePHP Sep 10, 2024 pm 05:27 PM

Pour travailler sur le téléchargement de fichiers, nous allons utiliser l'assistant de formulaire. Voici un exemple de téléchargement de fichiers.

Discuter de CakePHP Discuter de CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP est un framework open source pour PHP. Il vise à faciliter grandement le développement, le déploiement et la maintenance d'applications. CakePHP est basé sur une architecture de type MVC à la fois puissante et facile à appréhender. Modèles, vues et contrôleurs gu

Routage CakePHP Routage CakePHP Sep 10, 2024 pm 05:25 PM

Dans ce chapitre, nous allons apprendre les sujets suivants liés au routage ?

CakePHP travaillant avec la base de données CakePHP travaillant avec la base de données Sep 10, 2024 pm 05:25 PM

Travailler avec la base de données dans CakePHP est très simple. Nous comprendrons les opérations CRUD (Créer, Lire, Mettre à jour, Supprimer) dans ce chapitre.

CakePHP créant des validateurs CakePHP créant des validateurs Sep 10, 2024 pm 05:26 PM

Le validateur peut être créé en ajoutant les deux lignes suivantes dans le contrôleur.

See all articles