想压缩空格.

php中文网
发布: 2016-06-23 14:09:16
原创
1136人浏览过

有以下模板代码,上下两个div的模板,我喜欢上面那个div的写法,因为缩进和对齐都好了,用下面的写法会导致难以阅读维护

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /><title>aafdsa</title><style type="text/css">a{margin:0; padding:0}</style></head><body><div id="div1"><?php foreach($ar1 as $bbb): ?>    <a href="http://www.baidu.com?xxx=<?php echo $bbb ;?>"><?php echo $bbb ;?></a><?php endforeach; ?></div><div id="div2"><?php foreach($ar1 as $bbb): ?><a href="http://www.baidu.com?xxx=<?php echo $bbb ;?>"><?php echo $bbb ;?></a><?php endforeach; ?></div></body></html>
登录后复制



视图对象控制的代码是这样的
$ar1 = array(1,2,3,4,5,6,7);  //extract($this->data);ob_start('ob_gzhandler');ob_implicit_flush(0);include 'tpl.php';ob_flush();
登录后复制



然而输出的HTML呈以下效果(以下只贴上BODY部分算了)
<body><div id="div1">    <a href="http://www.baidu.com?xxx=1">1</a>    <a href="http://www.baidu.com?xxx=2">2</a>    <a href="http://www.baidu.com?xxx=3">3</a>    <a href="http://www.baidu.com?xxx=4">4</a>    <a href="http://www.baidu.com?xxx=5">5</a>    <a href="http://www.baidu.com?xxx=6">6</a>    <a href="http://www.baidu.com?xxx=7">7</a></div><div id="div2"><a href="http://www.baidu.com?xxx=1">1</a><a href="http://www.baidu.com?xxx=2">2</a><a href="http://www.baidu.com?xxx=3">3</a><a href="http://www.baidu.com?xxx=4">4</a><a href="http://www.baidu.com?xxx=5">5</a><a href="http://www.baidu.com?xxx=6">6</a><a href="http://www.baidu.com?xxx=7">7</a></div></body>
登录后复制

我企图用排版规范的写法,但又企图输出下面那个div2的a标签不换行的效果,不知道这样可不可以实现.我以为
ob_start('ob_gzhandler');
这个设置可以使得被压缩,但却没有.
我在奇怪thinkphp框架是怎么弄的,我在它那里面是规范排版模板代码的,但它输出的却是压缩的.可能是因为它编译的原因.我没有统计,直接include...
那么请问大家有没有什么办法指导一下?非得编译?

比格设计
比格设计

比格设计是135编辑器旗下一款一站式、多场景、智能化的在线图片编辑器

比格设计 124
查看详情 比格设计

回复讨论(解决方案)

ob_start('compact_format');function compact_format($buffer) {  return preg_replace("/[\r\n]+\s*/", '', $buffer);}echo <<< TXT<div id="div1">    <a href="http://www.baidu.com?xxx=1">1</a>    <a href="http://www.baidu.com?xxx=2">2</a>    <a href="http://www.baidu.com?xxx=3">3</a>    <a href="http://www.baidu.com?xxx=4">4</a>    <a href="http://www.baidu.com?xxx=5">5</a>    <a href="http://www.baidu.com?xxx=6">6</a>    <a href="http://www.baidu.com?xxx=7">7</a></div>TXT;//执行以下,看看效果
登录后复制

ob_start('compact_format');function compact_format($buffer) {  return preg_replace("/[\r\n]+\s*/", '', $buffer);}echo <<< TXT<div id="div1">    <a href="http://www.baidu.com?xxx=1">1</a>    <a href="http://www.baidu.com?xxx=2">2</a>    <a href="http://www.baidu.com?xxx=3">3</a>    <a href="http://www.baidu.com?xxx=4">4</a>    <a href="http://www.baidu.com?xxx=5">5</a>    <a href="http://www.baidu.com?xxx=6">6</a>    <a href="http://www.baidu.com?xxx=7">7</a></div>TXT;//执行以下,看看效果
登录后复制


嗯谢谢,这样是可以.就是要执行一下正则处理了.
我以为利用PHP自带的输出机制可以完成.

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号