在综合英文版XOOPS 2.09, 2.091, 2.092 的基础上正式发布XOOPS 2.09中文版 XOOPS 2.09x 版主要是PHP5升级、bug修正和安全补正: 1 全面兼容PHP 5.
源代码在线查看: function.html_table.php
/**
* Smarty plugin
* @package Smarty
* @subpackage plugins
*/
/**
* Smarty {html_table} function plugin
*
* Type: function
* Name: html_table
* Date: Feb 17, 2003
* Purpose: make an html table from an array of data
* Input:
* - loop = array to loop through
* - cols = number of columns
* - rows = number of rows
* - table_attr = table attributes
* - tr_attr = table row attributes (arrays are cycled)
* - td_attr = table cell attributes (arrays are cycled)
* - trailpad = value to pad trailing cells with
* - vdir = vertical direction (default: "down", means top-to-bottom)
* - hdir = horizontal direction (default: "right", means left-to-right)
* - inner = inner loop (default "cols": print $loop line by line,
* $loop will be printed column by column otherwise)
*
*
* Examples:
*
* {table loop=$data}
* {table loop=$data cols=4 tr_attr='"bgcolor=red"'}
* {table loop=$data cols=4 tr_attr=$colors}
*
* @author Monte Ohrt
* @version 1.0
* @link http://smarty.php.net/manual/en/language.function.html.table.php {html_table}
* (Smarty online manual)
* @param array
* @param Smarty
* @return string
*/
function smarty_function_html_table($params, &$smarty)
{
$table_attr = 'border="1"';
$tr_attr = '';
$td_attr = '';
$cols = 3;
$rows = 3;
$trailpad = ' ';
$vdir = 'down';
$hdir = 'right';
$inner = 'cols';
if (!isset($params['loop'])) {
$smarty->trigger_error("html_table: missing 'loop' parameter");
return;
}
foreach ($params as $_key=>$_value) {
switch ($_key) {
case 'loop':
$$_key = (array)$_value;
break;
case 'cols':
case 'rows':
$$_key = (int)$_value;
break;
case 'table_attr':
case 'trailpad':
case 'hdir':
case 'vdir':
$$_key = (string)$_value;
break;
case 'tr_attr':
case 'td_attr':
$$_key = $_value;
break;
}
}
$loop_count = count($loop);
if (empty($params['rows'])) {
/* no rows specified */
$rows = ceil($loop_count/$cols);
} elseif (empty($params['cols'])) {
if (!empty($params['rows'])) {
/* no cols specified, but rows */
$cols = ceil($loop_count/$rows);
}
}
$output = "\n";
for ($r=0; $r $output .= "\n";
$rx = ($vdir == 'down') ? $r*$cols : ($rows-1-$r)*$cols;
for ($c=0; $c $x = ($hdir == 'right') ? $rx+$c : $rx+$cols-1-$c;
if ($inner!='cols') {
/* shuffle x to loop over rows*/
$x = floor($x/$cols) + ($x%$cols)*$rows;
}
if ($x $output .= "" . $loop[$x] . "\n";
} else {
$output .= "$trailpad\n";
}
}
$output .= "\n";
}
$output .= "\n";
return $output;
}
function smarty_function_html_table_cycle($name, $var, $no) {
if(!is_array($var)) {
$ret = $var;
} else {
$ret = $var[$no % count($var)];
}
return ($ret) ? ' '.$ret : '';
}
/* vim: set expandtab: */
?>
|
相关资源 |
|
-
在综合英文版XOOPS 2.09, 2.091, 2.092 的基础上正式发布XOOPS 2.09中文版 XOOPS 2.09x 版主要是PHP5升级、bug修正和安全补正: 1 全面兼容PHP 5.
-
本文在阐明反相对称调制(PISM)原理的基础上
-
在对复杂网络系统可靠性优化配置方法研究的基础上,编制出系统可靠度优化配置计算机程序.
-
本文在现有耦合映射格点 CML 动力系统模型的基础上 ,提出了能够同时模拟对流项和扩散项的强弱耦合系统的 CML 模型 ,分析了这类模型的特点和结构· 数值试验表明 ,这类 CML 模型能够有效地研究
-
在对船用陀螺漂移数据建立时间序列模型的基础上
-
TinyOS调度机制的研究与改进
在介绍无线传感器网络节点嵌入式操作系统TinyOS内核的基础上, 分析了其调度机制并指出不足。
提出了几套调度改进方案, 重点介绍了基于优先级调度策略, 并实现了
-
雷客图ASP站长安全助手
功能:
1、ASP木马查找(能够查出现在几乎所有的ASP木马)
2、文件篡改检查
3、可疑文件搜索
4、Access数据库保护
5、记录入侵者信息
-
基于VC++的学生信息管理系统的设计与实现:系统实现了以下基本功能:
1)用户管理:管理系统操作人员,设置操作人员口令和权限.在满足不同操作用户的操
作需求的基础上,提高系统的安全性.
2)基础
|