织梦前台和后台根据联动枚举数字输出文字的

网站建设 2022-07-27 08:13www.1681989.com免费网站
根据联动枚举的数字写一个自定义方法函数来自由输出联动枚举的文字值 打开 /clude/extend.func.php 在最下面加入个方法 if (!function_exists( Getenums )){ function Getenums ($evalue= 0 ,$egroup) { if ( ! isset ($GLOBALS[ em_ .$egroup. s ]) ){$cachefile = DEDEDATA. /enums/ .$egroup. .php ; if (!file_exis […]



根据联动枚举的数字写一个自定义方法函数来自由输出联动枚举的文字值

打开 /clude/extend.func.php 在最下面加入个方法

if(!function_exists('Getenums'))
{
	function Getenums($evalue=0,$egroup)
	{
		if( !isset($GLOBALS['em_'.$egroup.'s']) )
		{
			$cachefile = DEDEDATA.'/enums/'.$egroup.'.php';
			if(!file_exists($cachefile))
			{
				require_once(DEDEINC.'/enums.func.php');
				WriteEnumsCache();
			}
			if(!file_exists($cachefile))
			{
				return '';
			}
			else
			{
				require_once($cachefile);
			}
		}
		if($evalue>=500)
		{
			if($evalue % 500 == 0)
			{
				return (isset($GLOBALS['em_'.$egroup.'s'][$evalue]) ? $GLOBALS['em_'.$egroup.'s'][$evalue] : '');
			}
			else if (preg_match("#([0-9]{1,})\.([0-9]{1,})#", $evalue, $matchs))
			{
				$esonvalue = $matchs[1];
				$evalue = $esonvalue - ($esonvalue % 500);
				$esecvalue = $evalue;
				$GLOBALS['em_'.$egroup.'s'][$evalue] = empty($GLOBALS['em_'.$egroup.'s'][$evalue])? '' 
														 : $GLOBALS['em_'.$egroup.'s'][$evalue];
				$GLOBALS['em_'.$egroup.'s'][$esonvalue] = empty($GLOBALS['em_'.$egroup.'s'][$esonvalue])? '' 
														 : $GLOBALS['em_'.$egroup.'s'][$esonvalue];
				$GLOBALS['em_'.$egroup.'s'][$esecvalue] = empty($GLOBALS['em_'.$egroup.'s'][$esecvalue])? '' 
														 : $GLOBALS['em_'.$egroup.'s'][$esecvalue];
				return $GLOBALS['em_'.$egroup.'s'][$evalue].' -- '.$GLOBALS['em_'.$egroup.'s'][$esonvalue].' -- '.$GLOBALS['em_'.$egroup.'s'][$esecvalue];
			}
			else
			{
				$elimit = $evalue % 500;
				$erevalue = $evalue - $elimit;
				$GLOBALS['em_'.$egroup.'s'][$erevalue] = empty($GLOBALS['em_'.$egroup.'s'][$erevalue])? '' 
														 : $GLOBALS['em_'.$egroup.'s'][$erevalue];
				$GLOBALS['em_'.$egroup.'s'][$evalue] = empty($GLOBALS['em_'.$egroup.'s'][$evalue])? '' 
														 : $GLOBALS['em_'.$egroup.'s'][$evalue];
				return $GLOBALS['em_'.$egroup.'s'][$erevalue].' -- '.$GLOBALS['em_'.$egroup.'s'][$evalue];
			}
		}
	}
}

2、在任何你想要调用的地方写上调用即可,例如

{dede:loop table=dede_diyform2 row=10}     地区[field:nativeplace function=Getenums(@me,'nativeplace')/]     行业[field:vocation function=Getenums(@me,'vocation')/]     信息类型[field:fotype function=Getenums(@me,'fotype')/] {/dede:loop}

调用说明

Getenums(@me,'nativeplace')

@me 就是数字

'nativeplace' 就是枚举组名
 


Copyright © 2016-2025 www.1681989.com 推火网 版权所有 Power by