这个问题有点难度

justfly 2001-10-22 02:02:08
求一个函数
functionname($k,$kk,$kkk……)
然后这里的变量个数是不确定的
可以做到吗?
我是用来检查输入变量的
...全文
90 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zxyufan 2001-10-22
  • 打赏
  • 举报
回复
对的~~这个在4.0还是没有的~~所以那个常见的帮助手册查不到好象~~
justfly 2001-10-22
  • 打赏
  • 举报
回复
找到答案了
其实也就是func_num_args()
和func_get_args();这两个函数而已:)
zxyufan 2001-10-22
  • 打赏
  • 举报
回复
完全可以的~~

下面是一个查找订单的函数~~函数肯定需要一个UserID的参数,另外可以选择的参数,与查询方式有关,如果按订单号查找的话就还需要一个OrderID,如果按时间查找的话,就还需要两个Date:$BeginDate和$EndDate。函数实现如下:

function SearchOrder($UserID)
{
$n = func_num_args();
$m = func_get_args();
$link = new db;
$result = array();

if ($n == 3)
{
$BeginDate = $m[1];
$EndDate = $m[2];

$sql = "select OrderId from TOrder where UserId = '".$UserID."'";
if ($BeginDate <> "")
{
$sql .= " and CreateTime > '".$BeginDate."'";
}
if ($EndDate <> "")
{
$sql .=" and CreateTime < '".$EndDate." 23:59:59'";
}
$sql .= " order by CreateTime desc";

$link->query($sql);
for ($i=0;$i<$link->num_rows();$i++)
{
$tmp = $link->next_record();
$result[] = $tmp["OrderId"];
}
}
elseif ($n == 2)
{
$OrderID = $m[1];

$sql = "select OrderId from TOrder where UserId = '".$UserID."' and OrderId = ".$OrderID." order by CreateTime desc";
$link->query($sql);
for ($i=0;$i<$link->num_rows();$i++)
{
$tmp = $link->next_record();
$result[] = $tmp["OrderId"];
}
}
return $result;
}
justtest 2001-10-22
  • 打赏
  • 举报
回复
你干吗要用这么多变量,用一个数组不就得了~
justfly 2001-10-22
  • 打赏
  • 举报
回复
可以给出一个具体一点的吗?
不需要什么功能,只要能查那些变量是否为空就ok了
w3601704 2001-10-22
  • 打赏
  • 举报
回复
使用数组不行吗?

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧