作者tkdmaf (皮皮快跑)
看板PHP
标题Re: [请益] for回圈table练习
时间Sun Oct 24 09:49:51 2010
※ 引述《ccg ()》之铭言:
: 最近刚学php学到for回圈,看到在设成table的一范例为
: <?php
: echo "<table border='1'>";
: for($i=1; $i<=10; $i++){
: if($i % 2 !=0){
: echo "<tr><td width='50'>{$i}</td>";
: }else{
: echo "<td width='50'>{$i}</td></tr>";
: }
: }
: echo "</table>";
: ?>
:
: 请问为何echo在一开头就要出现呢?
: 为何出现这麽多echo啊?? 冏>
: 谢谢
让我们转换一个型式来呈现看看如何?(view)
<table border="1">
<tr>
<?php for($i = 1;$i <= 10;$i++):?>
<td width="50"><?echo $i?></td> (这里的echo才是必要性的输出)
<?php if($i % 2 == 0 && $i != 10):?>
</tr><tr>
<?php endif?>
<?php endfor?>
</tr>
</table>
可能的话注意几个小细节:
1.如果回圈的量是非固定值,则可将此量值带变数。
2.如果是foreach解资料阵列,在那之前可能就需要多塞一个序列值给每一笔资料。
3.有时候有人会坚持连for、if之类的都应该在程式端执行,这我没什麽太大的意见。
不过这样的做法可能会需要第二、第三个view档案。
4.初心者听不懂很正常。因为这是样版式的做法。也就是说,其实这个样版最终是
被希望给主程式载入的view档案。虽然并没有限制说他就一定是个view。
但如果你很期望先拿他档一般程式来使用,要不就是主程式位於你开始输出端的
最上端,要不就乾脆你的主程式是另一个档案,你可以把主程式require进来。
5.MVC并不是什麽难以理解的架构,就算一开始不懂也可以嚐试去了解看看。
即使最初会变成「CM」「V(显示)」分离,至少你让V先离家出走你就迈进很多步。
额外的小技巧提供给对VIEW这个功能有想要自己写写看的朋友们。
这是关於SHORT TAG的做法。
有人之前说「<?=」这样的东西万一PHP设定关闭了SHORT TAG的话不就不能用?
(<?= 就是 <?php echo)
如果你有嚐试用eval去写个view出来的话。
那就在eval之前,用str_replace将「<?=」变成「<?php echo」就行了。
之前看到ci强制将「<?=」给开放的原因就是因为他做了这件事。
可不是用ini_set去强制改掉php设定档。
正所谓上有政策下有对策,程式设计师的工作就是拼命找对策!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.104.130.91
1F:推 Kelunyang:推! 10/24 10:02
2F:→ ccg:感谢~~推~~ 10/24 11:33
3F:推 george755185:推 我也还在「CM」「V」的阶段XD 10/24 14:04
4F:→ Kelunyang:我大概可以分出MVC 了XD 10/24 18:01
5F:→ superpai:写foreach(range(1,10) as $i): 比较酷XD 10/24 23:44
6F:→ ileadu:你的表格echo 出来会很有趣 10/26 09:25