The DoYouHaoBaby PHP Framework中文开发文档手册
Copyright(c) DoYouHaoBaby.NET All Rights Reserved.
Copyright(c) DoYouHaoBaby.NET All Rights Reserved.
[ Range标签 ]
Range标签用于判断某个变量是否在某个范围之内,包括in、notin和range三个标签。
可以使用in标签来判断模板变量是否在某个范围内。
例如:
- {~$id=1}
- <in name="id" value="1,2,3" >我的值为{$id},我属于大家这个集体!</in>
程序编译后的PHP 代码如下:
- <?php !defined('DYHB_PATH') && exit; /* DoYouHaoBaby Framework 模板缓存文件 生成时间:2002-01-11 16:35:56 */ ?>
- <?php $id=1 ; ?>
- <?php if(in_array(($id), explode(',',"1,2,3"))): ?>我的值为<?php echo( $id ); ?>,我属于大家这个集体!<?php endif; ?>
如图:

程序运行结果如下:
- 我的值为1,我属于大家这个集体!
如图:

如果判断不在某个范围内
我们可以在模板中使用:
- {~$id=4}
- <notin name="id" value="1,2,3" >我的值为{$id},我的人不在大家这个集体,但是我的心却早已经来了。</notin>
程序编译后的PHP 代码如下:
- <?php !defined('DYHB_PATH') && exit; /* DoYouHaoBaby Framework 模板缓存文件 生成时间:2002-01-11 16:40:21 */ ?>
- <?php $id=4 ; ?>
- <?php if(!in_array(($id), explode(',',"1,2,3"))): ?>我的值为<?php echo( $id ); ?>,我的人不在大家这个集体,但是我的心却早已经来了。<?php endif; ?>
如图:

程序运行结果如下:
- 我的值为4,我的人不在大家这个集体,但是我的心却早已经来了。
如图:

可以把上面两个标签合并成为:
- {~$id=2}
- <in name="id" value="1,2,3" >我的值为{$id},我属于这个集体。<else/>我的值为{$id},我人不属于这个集体,但我的心早已经属于这个集体了。</in>
程序编译后的PHP 代码如下:
- <?php !defined('DYHB_PATH') && exit; /* DoYouHaoBaby Framework 模板缓存文件 生成时间:2002-01-11 16:43:34 */ ?>
- <?php $id=2 ; ?>
- <?php if(in_array(($id), explode(',',"1,2,3"))): ?>我的值为<?php echo( $id ); ?>,我属于这个集体。<?php else: ?>我的值为<?php echo( $id ); ?>,我人不属于这个集体,但我的心早已经属于这个集体了。<?php endif; ?>
如图:

程序运行结果如下:
- 我的值为2,我属于这个集体。
如图:

value属性的值可以使用变量,例如:
- {~$id=4}
- {~$var=array(1,2,3,4)}
- <in name="id" value="$var" >我的值为{$id},我属于这个集体!</in><br>
- {~$var='1,2,3,4'}
- <in name="id" value="$var" >我的值为{$id},我属于这个集体!</in>
程序运行后的编译PHP 代码如下:
- <?php !defined('DYHB_PATH') && exit; /* DoYouHaoBaby Framework 模板缓存文件 生成时间:2002-01-11 16:47:17 */ ?>
- <?php $id=4 ; ?>
- <?php $var=array(1,2,3,4) ; ?>
- <?php if(in_array(($id), is_array($var)?$var:explode(',',$var))): ?>我的值为<?php echo( $id ); ?>,我属于这个集体!<?php endif; ?><br>
- <?php $var='1,2,3,4' ; ?>
- <?php if(in_array(($id), is_array($var)?$var:explode(',',$var))): ?>我的值为<?php echo( $id ); ?>,我属于这个集体!<?php endif; ?>
如图:

程序运行结果如下:
- 我的值为4,我属于这个集体!
- 我的值为4,我属于这个集体!
如图:

变量的值可以是字符串或者数组,都可以完成范围判断。
也可以直接使用range标签,替换in和notin的用法:
- {~$id=3}
- <range name="id" value="1,2,3" type="in" >我的值为{$id},我属于这个集体!</range>
程序运行编译后的PHP 代码如下:
- <?php !defined('DYHB_PATH') && exit; /* DoYouHaoBaby Framework 模板缓存文件 生成时间:2002-01-11 16:52:05 */ ?>
- <?php $id=3 ; ?>
- <?php if(in_array(($id), explode(',',"1,2,3"))): ?>我的值为<?php echo( $id ); ?>,我属于这个集体!<?php endif; ?>
如图:

程序运行结果如下:
- 我的值为3,我属于这个集体!
如图:

说明:其中type属性的值可以用in或者notin。
