PhpCodeAnalyzer
version` option
PhpCodeAnalyzer finds usage of different non-built-in extensions in your php code. This tool helps you understand how transportable your code between php installations is.
To scan your files or folder launch phpca and pass file or directory names.
> phpca ..HttpServer
Scanning ..HttpServer ...
[spl] Function "spl_autoload_register" used in file ..HttpServer/vendor/composer/ClassLoader.php[258]
[spl] Function "spl_autoload_unregister" used in file ..HttpServer/vendor/composer/ClassLoader.php[266]
[spl] Function "spl_autoload_register" used in file ..HttpServer/vendor/composer/autoload_real.php[22]
[spl] Function "spl_autoload_unregister" used in file ..HttpServer/vendor/composer/autoload_real.php[24]
Used non-built-in extensions in your code:
- [spl] Standard PHP Library (SPL). This extension is bundled with php since PHP 5.0.0. Extension is available in pecl: spl.You can skip progress with --no-progress option:
> phpca --no-progress ..yii-1.1.16.bca042frameworkcaching
Scanning ..yii-1.1.16.bca042frameworkcaching ...
Used non-built-in extensions in your code:
- [apc] Alternative PHP Cache. Extension is available in pecl: apc.
- [wincache] Windows Cache for PHP. Extension is available in pecl: wincache.
Also, you can keep only progress with --no-report option:
> phpca --no-report ..yii-1.1.16.bca042frameworkcaching
Scanning ..yii-1.1.16.bca042frameworkcaching ...
[apc] Function "apc_fetch" used in file ..yii-1.1.16.bca042frameworkcaching/CApcCache.php[46]
[apc] Function "apc_fetch" used in file ..yii-1.1.16.bca042frameworkcaching/CApcCache.php[56]
[apc] Function "apc_store" used in file ..yii-1.1.16.bca042frameworkcaching/CApcCache.php[70]
[apc] Function "apc_add" used in file ..yii-1.1.16.bca042frameworkcaching/CApcCache.php[84]
[apc] Function "apc_delete" used in file ..yii-1.1.16.bca042frameworkcaching/CApcCache.php[95]
[apc] Function "apc_clear_cache" used in file ..yii-1.1.16.bca042frameworkcaching/CApcCache.php[107]
[apc] Function "apc_clear_cache" used in file ..yii-1.1.16.bca042frameworkcaching/CApcCache.php[109]
[wincache] Function "wincache_ucache_get" used in file ..yii-1.1.16.bca042frameworkcaching/CWinCache.php[46]
[wincache] Function "wincache_ucache_get" used in file ..yii-1.1.16.bca042frameworkcaching/CWinCache.php[56]
[wincache] Function "wincache_ucache_set" used in file ..yii-1.1.16.bca042frameworkcaching/CWinCache.php[70]
[wincache] Function "wincache_ucache_add" used in file ..yii-1.1.16.bca042frameworkcaching/CWinCache.php[84]
[wincache] Function "wincache_ucache_delete" used in file ..yii-1.1.16.bca042frameworkcaching/CWinCache.php[95]
[wincache] Function "wincache_ucache_clear" used in file ..yii-1.1.16.bca042frameworkcaching/CWinCache.php[106]If you want to see only usage of one specific extension, use --extension= option:
> phpca --extension=apc ..yii-1.1.16.bca042frameworkcaching
Scanning ..yii-1.1.16.bca042frameworkcaching ...
[apc] Function "apc_fetch" used in file ..yii-1.1.16.bca042frameworkcaching/CApcCache.php[46]
[apc] Function "apc_fetch" used in file ..yii-1.1.16.bca042frameworkcaching/CApcCache.php[56]
[apc] Function "apc_store" used in file ..yii-1.1.16.bca042frameworkcaching/CApcCache.php[70]
[apc] Function "apc_add" used in file ..yii-1.1.16.bca042frameworkcaching/CApcCache.php[84]
[apc] Function "apc_delete" used in file ..yii-1.1.16.bca042frameworkcaching/CApcCache.php[95]
[apc] Function "apc_clear_cache" used in file ..yii-1.1.16.bca042frameworkcaching/CApcCache.php[107]
[apc] Function "apc_clear_cache" used in file ..yii-1.1.16.bca042frameworkcaching/CApcCache.php[109]Summary report in this case will not be added at the end.
Full list of available options:
> phpca -h
PhpCodeAnalyzer
Usage:
phpca [-v] [-q] [--output=<path>] [--no-report] [--no-progress] [--since-version=<version>] FILES...
phpca [-v] [-q] [--output=<path>] --extension=<ext> FILES...
phpca -h
Options:
-h --help Show this text
-v --verbose Show more debug text
-q --quiet Don't print any messages
--output=<path> Path where to generate XML report
--extension=<ext> Look for usage a specific extension
--no-report Turn off summary report
--no-progress Turn off progress
--since-version=<version> Only include extensions not included since versionchmod +x phpca.phara. Local installation: use it from current folder:
./phpca.phar -hb. Global installation: move it in to one of folders listed in your $PATH and run from any folder:
sudo mv phpca.phar /usr/local/bin/phpca
phpca -hAnother way to install phpca is via composer.
curl -sS https://getcomposer.org/installer | php./composer.phar global require wapmorgan/php-code-analyzer dev-masterphpca -h