本文概述
- 数值列表
- 字母清单
通过使用HTML手动编写所有内容, 无疑这将成为一项无聊的任务:
<
a href="http://www.srcmini.com/lexicon/0">
0<
/a>
<
a href="http://www.srcmini.com/lexicon/1">
1<
/a>
<
a href="http://www.srcmini.com/lexicon/2">
2<
/a>
<
a href="http://www.srcmini.com/lexicon/3">
3<
/a>
<
a href="http://www.srcmini.com/lexicon/4">
4<
/a>
<
a href="http://www.srcmini.com/lexicon/5">
5<
/a>
<
!-- .... -->
<
a href="http://www.srcmini.com/lexicon/X">
X<
/a>
<
a href="http://www.srcmini.com/lexicon/Y">
Y<
/a>
<
a href="http://www.srcmini.com/lexicon/Z">
Z<
/a>
真的没有人想要。忽略很难维护的事实, 源代码文件的大小将与高质量代码有很大的不同。如果你在项目中使用Smarty模板, 则可以借助循环和范围修饰符轻松地生成以前的HTML。
数值列表对于数字和字母列表, 我们将在foreach循环中使用from和range修饰符。可以说, 这些属性的作用就像传播运算符一样, 在这种情况下, 按照升序排列(因为我们使用的范围是0到9), smarty也提供了降序(9到0)的支持:
{* To display the list of numbers from 0 to *}{foreach item=i from=0|@range:9}{* $i in this case contains the number in the order of the loop e.g 1, 2, 3, 4 ...The output would be:<
a href="http://www.srcmini.com/lexicon/0">
0<
/a>
*}<
a href="http://www.srcmini.com/lexicon/{$i}">
{$i}<
/a>
{/foreach}
前面的代码片段足以在我们的词典中显示0到9之间的数字。请注意, 它不仅限于0到9, 还可以是任何其他数字。
字母清单就像我们处理数字范围一样, Smarty非常聪明, 可以对字母字符进行同样的处理, 因此, 如果你要显示从A到Z的列表, 以下代码段将为你解决问题:
{* To display the list of characters from A to Z *}{foreach item=i from='A'|@range:'Z'}{* $i in this case contains the character in the order of the loop e.g A, B, C, D ...The output would be:<
a href="http://www.srcmini.com/lexicon/A">
A<
/a>
*}<
a href="http://www.srcmini.com/lexicon/{$i}">
{$i}<
/a>
{/foreach}
逆序的相同逻辑也适用于字符(从Z到A)。在这种情况下, 对于字符, 我们的循环使用大写字符, 因此, 字符的输出将大写(如预期的那样)。对小写字符执行相同操作将以小写形式显示所有字符。
【如何使用Smarty循环显示字母和数字的列表】编码愉快!
推荐阅读
- 如何在Symfony 3中使用纯PHP编译LESS
- 如何在Silex中将PHP用作模板引擎而不是Twig
- 如何轻松将项目推到Twig中的数组
- PHP函数”func_get_arg”和”func_get_args”如何从PHP 5.x更改为PHP 7.x
- 如何使用短语法使用Twig检查变量是否存在以及是否为空
- 如何安全处理PHP错误(__toString()不得抛出异常)
- 每个Twig开发人员都应该能够回答的20个问题的答案和解释
- 如何在Symfony 1.4上使用Composer安装Packagist库
- 如何使Symfony Project 1.4.20与PHP 5.5或5.6完全兼容(不推荐使用(preg_replace()警告))