Process/Php7.php
[Pman.Core] / Process / Php7.php
1 <?php
2
3 /**
4  *
5  * PHP7 produces all sorts of pointless warnings... this attempts to just include all the files,
6  * so that you can view them..??
7  *
8  * would be nice to write the code to fix them.
9  *
10  */
11 require_once 'Pman.php';
12
13 class Pman_Core_Process_Php7 extends Pman 
14 {
15
16     static $cli_desc = "Tests for PHP compatibilty, by including files...";
17     static $cli_opts = array();
18
19     function getAuth() 
20     {
21         if (empty($this->bootLoader->cli)) {
22             die("CLI only");
23         }
24     }
25     
26     function get($base, $opts = array()) 
27     {
28         set_error_handler(function ($errno, $errstr, $errfile, $errline ){
29 //            throw new ErrorException($errstr, $errno, 0, $errfile, $errline);
30             print_r(array(
31                 $errno,
32                 $errstr,
33                 $errfile,
34                 $errline
35             ));
36         });
37         
38         $this->scan(array("Pman"));
39 //        $this->scan(array("Hebe"));
40         
41         exit;
42     }
43     
44     function scan($route = array()) 
45     {
46         $dir = $this->rootDir . "/" . implode("/", $route);
47         
48         echo "Looking for {$dir}\n";
49         
50         foreach (scandir($dir) as $d) {
51             
52             if (!strlen($d) || $d[0] == '.') {
53                 continue;
54             }
55             
56             if (is_dir($d)) {
57                 echo "directory : {$d}\n";
58                 $this->scan(array_merge($route, array($d)));
59                 continue;
60             }
61             
62             if (!preg_match('/\.php$/', $d)) {
63                 continue;
64             }
65             
66             try {
67                 
68                 require_once implode('/', $route) . "/" . $d;
69                 
70             } catch (ErrorException $ex) {
71                 echo $ex->getMessage() . "\n";
72             }
73             
74         }
75         
76     }
77     
78     function output() 
79     {
80         die("DONE");
81     }
82
83 }