用php调用graphviz轻松画拓扑图
graphviz是一款古老的画拓扑图的工具,非常强大,能够按照你在文本文件里定义的格式转换为拓扑图,很多大公司都是用graphviz来画拓扑图,它的最主要的功能是用程序生成文本,然后调用graphviz来把文本转化为拓扑图。
1.安装graphviz
到http://www.graphviz.org/Download..php里下载对应的平台的安装包;
我用的是centos因此用yum安装最方便
wget http://www.graphviz.org/graphviz-rhel.repo /etc/yum.repos.d/graphviz-rhel.repo
yum install graphviz
2.安装完毕后进行测试
echo “digraph G {Hello->World}” | dot -Tpng >hello.png
3.php 调用graphviz
首先用程序生成/tmp/domain.txt,然后用dot命令生成图片
header ("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in the past
header ("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); // always modified
header ("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header ("Pragma: no-cache"); // HTTP/1.0
header ("Content-type: image/gif");
$filename = '/tmp/domain.txt';
$somecontent = "digraph G {a->b->c->a}";
if (!$handle = fopen($filename, 'w')) {
echo "cannot open $filename";
exit;
}
if (fwrite($handle, $somecontent) === FALSE) {
echo "cannot write to $filename";
exit;
}
fclose($handle);
passthru("dot -Tpng $filename");
// passthru("cat $filename | dot -Tpng");
?>
end
0
0
相关文章
如何从PHP中调用Python文件?
我们如何使用使用mysql_fetch_assoc()函数的PHP脚本来显示MySQL表中的所有记录?
ini_set()在PHP中的作用是什么?
在PHP中的readlink()函数
我们如何编写PHP脚本来释放与MySQL结果关联的游标内存?
本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门AI工具
相关专题
Java 桌面应用开发(JavaFX 实战)
本专题系统讲解 Java 在桌面应用开发领域的实战应用,重点围绕 JavaFX 框架,涵盖界面布局、控件使用、事件处理、FXML、样式美化(CSS)、多线程与UI响应优化,以及桌面应用的打包与发布。通过完整示例项目,帮助学习者掌握 使用 Java 构建现代化、跨平台桌面应用程序的核心能力。
61
2026.01.14
热门下载
相关下载
精品课程
相关推荐
/
热门推荐
/
最新课程
【web前端】Node.js快速入门
共16课时 | 2万人学习
Mock.js | Axios.js | Json | Ajax--十天精品课堂
共7课时 | 0.5万人学习
nginx浅谈
共15课时 | 0.8万人学习
最新文章









