forked from phpDocumentor/phpDocumentor
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathphpdoc.php
executable file
·44 lines (38 loc) · 1.42 KB
/
phpdoc.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#!/usr/bin/env php
<?php
/**
* phpDocumentor
*
* PHP Version 5.3
*
* @author Mike van Riel <mike.vanriel@naenius.com>
* @copyright 2010-2012 Mike van Riel / Naenius (http://www.naenius.com)
* @license http://www.opensource.org/licenses/mit-license.php MIT
* @link http://phpdoc.org
*/
// check whether xhprof is loaded
$profile = (bool)(getenv('PHPDOC_PROFILE') === 'on');
if ($profile && extension_loaded('xhprof')) {
xhprof_enable(XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY);
}
// determine base include folder, if @php_dir@ contains @php_dir then
// we did not install via PEAR
$bootstrap_folder = (strpos('@php_dir@', '@php_dir') === 0)
? __DIR__ . '/../src'
: '@php_dir@/phpDocumentor/src';
require_once $bootstrap_folder . '/phpDocumentor/Application.php';
$app = new phpDocumentor\Application();
$app->run();
if (false !== $profile) {
include_once 'XHProf/utils/xhprof_lib.php';
include_once 'XHProf/utils/xhprof_runs.php';
$xhprof_data = xhprof_disable();
if ($xhprof_data !== null) {
$xhprof_runs = new XHProfRuns_Default();
$run_id = $xhprof_runs->save_run($xhprof_data, 'phpdoc');
$profiler_url = sprintf('index.php?run=%s&source=%s', $run_id, 'phpdoc');
echo 'Profile can be found at: ' . $profiler_url . PHP_EOL;
}
}
// disable E_STRICT reporting on the end to prevent PEAR from throwing Strict warnings.
error_reporting(error_reporting() & ~E_STRICT);