在Eclipse中查看未使用的(未链接的和未包含的)PHP文件
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了在Eclipse中查看未使用的(未链接的和未包含的)PHP文件,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1697字,纯文字阅读大概需要3分钟。
内容图文
![在Eclipse中查看未使用的(未链接的和未包含的)PHP文件](/upload/InfoBanner/zyjiaocheng/793/b1622d696fdb484b8e8db34ba67dd861.jpg)
我有一个相当大的Ecplise项目,有超过2000个php文件,我怀疑它们中有很多没有被使用.
我想生成所有php文件的列表,这些文件在任何其他文件中都没有提到.
提到我的意思是:
> include(‘file.php’)
> require_once(‘file.php’)
> $linktoimportantpage =“file.php”
因此,几乎所有文件都不包含该项目中任何其他文件名的字符串.
有没有办法做到这一点?
解决方法:
我写的这个脚本应该做你想要的.它将搜索项目中的所有PHP文件.然后它将搜索每个文件的内容以查找该文件名,如果文件名存在,显然您不想删除它,因此我们可以将其从数组中删除.然后,您将得到一个未在项目中“提及”的文件数组(该数组也将包含文件路径).
首先让我们设置脚本:
$path = realpath('/path/to/your/files');
$objects = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path), RecursiveIteratorIterator::SELF_FIRST);
$php_files = array();
接下来,循环将每个文件名添加到数组中,以便我们稍后搜索:
foreach ($objects as $name => $object)
{
// only add php files to the array
if($object->getExtension() !== 'php')
{
continue;
}
$php_files[$name] = $object->getBasename();
}
再次循环,但这次搜索每个文件:
foreach ($objects as $name => $object)
{
$path_parts = pathinfo($name);
// again, only search php files to the array
if($path_parts['extension'] == 'php')
{
// get the contents of each php file
$file_contents = file_get_contents($name);
// check each file name for an include
foreach($php_files as $path => $filename)
{
// check if the file exist in this file contents
if(strpos($file_contents, $filename) !== false)
{
// remove it from array if it exists in a file
unset($php_files[$path]);
}
}
}
}
打印数组以查看从未包含的文件:
print_r($php_files);
这将以下列方式返回一个数组:
Array
(
[/path/to/file1.php] => file1.php
[/path/to/file2.php] => file2.php
[/path/to/file3.php] => file3.php
)
内容总结
以上是互联网集市为您收集整理的在Eclipse中查看未使用的(未链接的和未包含的)PHP文件全部内容,希望文章能够帮你解决在Eclipse中查看未使用的(未链接的和未包含的)PHP文件所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。