-
Notifications
You must be signed in to change notification settings - Fork 0
/
i2spanEngine.php
50 lines (39 loc) · 1.22 KB
/
i2spanEngine.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
45
46
47
48
49
50
<?php
class i2spanEngine{
function __construct(){
$allPluginFiles = $this->getAllPluginFiles($_POST["dir"]);
$f = fopen("./test.txt","w");
foreach($allPluginFiles as $file){
fwrite($f, $file);
}
fclose($f);
$this->replaceIcons($allPluginFiles);
}
function getAllPluginFiles($dir){
$allFilePaths = [];
$iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($dir));
foreach ($iterator as $file) {
if ($file->isDir()) continue;
$path = $file->getPathname();
$allFilePaths[] = $path;
}
return $allFilePaths;
}
function replaceIcons($allFilePaths){
$f = fopen("./ext.txt","w");
foreach($allFilePaths as $file){
$fileParts = pathinfo($file);
$fileExt = $fileParts["extension"];
fwrite($f,$fileExt);
if(($fileExt=="php" || $fileExt =="html" || $fileExt =="js") && $fileParts["basename"]!= "i2spanEngine.php"){
$fileContents = file_get_contents($file);
$fileContents = preg_replace("/<i\s+/","<span ",$fileContents);
$fileContents = str_replace("<i>","<span>",$fileContents);
$fileContents = str_replace("</i>","</span>",$fileContents);
file_put_contents($file,$fileContents);
}
}
fclose($f);
}
}
$i2spanEngine = new i2spanEngine();