Rapide Advanced Adulte
   apd   
Resultatsapd   |   Contact

     Manuel PHP     

 

Table :

..NET Functions
.Apache-specific Functions
.Alternative PHP Cache
.Advanced PHP debugger
.Array Functions
.Aspell functions [deprecated]
.BBCode Functions
.BCMath Arbitrary Precision Mathematics Functions
.PHP bytecode Compiler
.Bzip2 Compression Functions
.Calendar Functions
.CCVS API Functions [deprecated]
.Class/Object Functions
.Classkit Functions
.ClibPDF Functions [deprecated]
.COM and .Net (Windows)
.Crack Functions
.Character Type Functions
.CURL, Client URL Library Functions
.Cybercash Payment Functions
.Credit Mutuel CyberMUT functions
.Cyrus IMAP administration Functions
.Date and Time Functions
.DB++ Functions
.Database (dbm-style) Abstraction Layer Functions
.dBase Functions
.DBM Functions [deprecated]
.dbx Functions
.Direct IO Functions
.Directory Functions
.DOM Functions
.DOM XML Functions
.enchant Functions
.Error Handling and Logging Functions
.Exif Functions
.Expect Functions
.File Alteration Monitor Functions
.Forms Data Format Functions
.Fileinfo Functions
.filePro Functions
.Filesystem Functions
.Filter Functions
.Firebird/InterBase Functions
.Firebird/Interbase Functions (PDO FIREBIRD)
.FriBiDi Functions
.FrontBase Functions
.FTP Functions
.Function Handling Functions
.GeoIP Functions
.Gettext Functions
.GMP Functions
.gnupg Functions
.Net Gopher
.Haru PDF Functions
.hash Functions
.HTTP
.Hyperwave Functions
.Hyperwave API Functions
.i18n Functions
.IBM Functions (PDO IBM)
.IBM DB2, Cloudscape and Apache Derby Functions
.iconv Functions
.ID3 Functions
.IIS Administration Functions
.Image Functions
.Imagick Image Library
.IMAP, POP3 and NNTP Functions
.Informix Functions
.Informix Functions (PDO INFORMIX)
.Ingres II Functions
.IRC Gateway Functions
.PHP / Java Integration
.JSON Functions
.KADM5
.LDAP Functions
.libxml Functions
.Lotus Notes Functions
.LZF Functions
.Mail Functions
.Mailparse Functions
.Mathematical Functions
.MaxDB PHP Extension
.MCAL Functions
.Mcrypt Encryption Functions
.MCVE (Monetra) Payment Functions
.Memcache Functions
.Mhash Functions
.Mimetype Functions
.Ming functions for Flash
.Miscellaneous Functions
.mnoGoSearch Functions
.Microsoft SQL Server Functions
.Microsoft SQL Server and Sybase Functions (PDO DBLIB)
.Mohawk Software Session Handler Functions
.mSQL Functions
.Multibyte String Functions
.muscat Functions
.MySQL Functions
.MySQL Functions (PDO MYSQL)
.MySQL Improved Extension
.Ncurses Terminal Screen Control Functions
.Network Functions
.Newt Functions
.NSAPI-specific Functions
.Object Aggregation/Composition Functions
.Object property and method call overloading
.Oracle Functions
.ODBC Functions (Unified)
.ODBC and DB2 Functions (PDO ODBC)
.oggvorbis
.OpenAL Audio Bindings
.OpenSSL Functions
.Oracle Functions [deprecated]
.Oracle Functions (PDO OCI)
.Output Control Functions
.Ovrimos SQL Functions
.Paradox File Access
.Parsekit Functions
.Process Control Functions
.Regular Expression Functions (Perl-Compatible)
.PDF Functions
.PDO Functions
.Phar archive stream and classes
.PHP Options&Information
.POSIX Functions
.Regular Expression Functions (POSIX Extended)
.PostgreSQL Functions
.PostgreSQL Functions (PDO PGSQL)
.Printer Functions
.Program Execution Functions
.PostScript document creation
.Pspell Functions
.qtdom Functions
.Radius
.Rar Functions
.GNU Readline
.GNU Recode Functions
.RPM Header Reading Functions
.runkit Functions
.SAM - Simple Asynchronous Messaging
.Satellite CORBA client extension [deprecated]
.SCA Functions
.SDO Functions
.SDO XML Data Access Service Functions
.SDO Relational Data Access Service Functions
.Semaphore, Shared Memory and IPC Functions
.SESAM Database Functions
.PostgreSQL Session Save Handler
.Session Handling Functions
.Shared Memory Functions
.SimpleXML functions
.SNMP Functions
.SOAP Functions
.Socket Functions
.Standard PHP Library (SPL) Functions
.SQLite Functions
.SQLite Functions (PDO SQLITE)
.Secure Shell2 Functions
.Statistics Functions
.Stream Functions
.String Functions
.Subversion Functions
.Shockwave Flash Functions
.Swish Functions
.Sybase Functions
.TCP Wrappers Functions
.Tidy Functions
.Tokenizer Functions
.Unicode Functions
.URL Functions
.Variable Handling Functions
.Verisign Payflow Pro Functions
.vpopmail Functions
.W32api Functions
.WDDX Functions
.win32ps Functions
.win32service Functions
.xattr Functions
.xdiff Functions
.XML Parser Functions
.XML-RPC Functions
.XMLReader functions
.XMLWriter Functions
.XSL functions
.XSLT Functions
.YAZ Functions
.YP/NIS Functions
.Zip File Functions
.Zlib Compression Functions
 
   

  apd  



Advanced PHP debugger

Introduction

APD is the Advanced PHP Debugger. It was written to provide profiling and debugging capabilities for PHP code, as well as to provide the ability to print out a full stack backtrace. APD supports interactive debugging, but by default it writes data to trace files. It also offers event based logging so that varying levels of information (including function calls, arguments passed, timings, etc.) can be turned on or off for individual scripts.

Caution

APD is a Zend Extension, modifying the way the internals of PHP handle function calls, and thus may or may not be compatible with other Zend Extensions (for example Zend Optimizer).

Installation

APD is currently available as a PECL extension from » http://pecl.php.net/package/apd. Make sure you have installed the CGI version of PHP and it is available in your current path along with the phpize script.

Run the following command to download, build, and install the latest stable version of APD:

pear install apd

This automatically installs the APD Zend module into your PHP extensions directory. It is not mandatory to keep it there; you can store the module in any directory PHP can read as long as you set the zend_extension parameter accordingly.

Windows users can download the extension dll php_apd.dll from » http://snaps.php.net/win32/PECL_STABLE/.

In your INI file, add the following lines:

zend_extension = /absolute/path/to/apd.so
apd.dumpdir = /absolute/path/to/trace/directory
apd.statement_tracing = 0

Depending on your PHP build, the zend_extension directive can be one of the following:

zend_extension              (non ZTS, non debug build)
zend_extension_ts           (    ZTS, non debug build)
zend_extension_debug        (non ZTS,     debug build)
zend_extension_debug_ts     (    ZTS,     debug build)

Building on Win32

To build APD under Windows you need a working PHP compilation environment as described on http://php.net/ -- basically, it requires you to have Microsoft Visual C++, win32build.zip, bison/flex, and some know how to get it to work. Also ensure that adp.dsp has DOS line endings; if it has unix line endings, Microsoft Visual C++ will complain about it.

Runtime Configuration

The behaviour of these functions is affected by settings in php.ini.

APD Configuration Options
Name Default Changeable Changelog
apd.dumpdir NULL PHP_INI_ALL  
apd.statement_tracing "0" PHP_INI_ALL Available since apd 0.9.
For further details and definitions of the PHP_INI_* constants, see the php.ini directives.

Here's a short explanation of the configuration directives.

apd.dumpdir string

Sets the directory in which APD writes profile dump files. You can specify an absolute path or a relative path.

You can specify a different directory as an argument to apd_set_pprof_trace().

apd.statement_tracing boolean

Specfies whether or not to do per-line tracings. Turning this on (1) will impact the performance of your application.

Resource Types

This extension has no resource types defined.

Predefined Constants

The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.

APD constants
Constant Value Description
FUNCTION_TRACE (integer) 1  
ARGS_TRACE (integer) 2  
ASSIGNMENT_TRACE (integer) 4  
STATEMENT_TRACE (integer) 8  
MEMORY_TRACE (integer) 16  
TIMING_TRACE (integer) 32  
SUMMARY_TRACE (integer) 64  
ERROR_TRACE (integer) 128  
PROF_TRACE (integer) 256  
APD_VERSION (string) example: 1.0.2-dev  

How to use PHP-APD in your scripts

  1. As the first line of your PHP script, call the apd_set_pprof_trace() function to start the trace:

    apd_set_pprof_trace();

    You can insert the line anywhere in your script, but if you do not start tracing at the beginning of your script you discard profile data that might otherwise lead you to a performance bottleneck.

  2. Now run your script. The dump output will be written to apd.dumpdir/pprof_pid.ext.

    Tip

    If you're running the CGI version of PHP, you will need to add the '-e' flag to enable extended information for apd to work properly. For example: php -e -f script.php

  3. To display formatted profile data, issue the pprofp command with the sort and display options of your choice. The formatted output will look something like:

    bash-2.05b$ pprofp -R /tmp/pprof.22141.0
    
    Trace for /home/dan/testapd.php
    Total Elapsed Time = 0.00
    Total System Time  = 0.00
    Total User Time    = 0.00
    
    
    Real         User        System             secs/    cumm
    %Time (excl/cumm)  (excl/cumm)  (excl/cumm) Calls    call    s/call  Memory Usage Name
    --------------------------------------------------------------------------------------
    100.0 0.00 0.00  0.00 0.00  0.00 0.00     1  0.0000   0.0009            0 main
    56.9 0.00 0.00  0.00 0.00  0.00 0.00     1  0.0005   0.0005            0 apd_set_pprof_trace
    28.0 0.00 0.00  0.00 0.00  0.00 0.00    10  0.0000   0.0000            0 preg_replace
    14.3 0.00 0.00  0.00 0.00  0.00 0.00    10  0.0000   0.0000            0 str_replace
    

    The -R option used in this example sorts the profile table by the amount of real time the script spent executing a given function. The "cumm call" column reveals how many times each function was called, and the "s/call" column reveals how many seconds each call to the function required, on average.

  4. To generate a calltree file that you can import into the KCacheGrind profile analysis application, issue the pprof2calltree comand.

Contact information

If you have comments, bugfixes, enhancements or want to help developing this beast, you can send an mail to » apd@mail.communityconnect.com. Any help is very welcome.

Table of Contents




 Back to chapter Php

 

Top
 

Add JungleKey to your Explorer

 
 

About Us | © 2007 JungleKey

   PHP 手册



iBlack | Mobile | Wiki | Add Engine
.