function querySub(&$parent, $table, $orderBy = null, $key = 'Id'){
$sql = "SELECT * FROM $table WHERE $key = $parent[$key]";
if($orderBy) {
$sql .= ' ORDER BY '.$orderBy;
}
$rows = query($sql);
foreach ($rows as $i => $row) {
foreach ($row as $field => $value) {
if($value === null) {
$row[$field] = '--';
}
}
$rows[$i] = $row;
}
$parent[$table] = $rows;
}
$sql = "SELECT * FROM $table WHERE $key = $parent[$key]";
if($orderBy) {
$sql .= ' ORDER BY '.$orderBy;
}
$rows = query($sql);
foreach ($rows as $i => $row) {
foreach ($row as $field => $value) {
if($value === null) {
$row[$field] = '--';
}
}
$rows[$i] = $row;
}
$parent[$table] = $rows;
}
解决方案 »
- php curl如何得到HTTP chunked response中chunked data size?
- php关于数组的组合查询问题
- 怎样解决网页乱码的问题,急,在线等,谢谢
- LeLeLong开源php框架3.4版正式发布
- 第一次来,php运行环境搞不定
- iis6+php5遇到几个怪问题
- 用户注册页面:怎么把form里的记录提交到下一个页面?下一个页面怎么接受?
- 这个问题怎么解决啊!
- 正则表达式一问。
- thinkphp里volist不显示???????
- php get_headers 判断返回是否是200 碰到不存在的脚本执行超时
- 怎么从代码里面得到网页的源码?(类似chrome的开发人员工具)
我就没学过php。。
//output parent,string table,string orderBy=null, string key='Id'
function querySub(&$parent, $table, $orderBy = null, $key = 'Id'){
$sql = "SELECT * FROM $table WHERE $key = $parent[$key]";
if($orderBy) {
$sql .= ' ORDER BY '.$orderBy;
}
$rows = query($sql);
//上面不用我解释了吧,查询语句返回结果集
foreach ($rows as $i => $row) {
//循环结果集
//foreach(string[] row in rows)
foreach ($row as $field => $value) {
//foreach(string value in row)
if($value === null) {
//if(value==null)
$row[$field] = '--';
//这里是赋值
}
}
$rows[$i] = $row;
//这里是赋值
}
$parent[$table] = $rows;
//这里是赋值
}可以用hashtable,或者数组
#运行时,必须定义一个$parent变量
$parent = null;
#函数的参数:
#&$parent: 表字段值的数组
#$table: 查询的表名
#$orderBy: 需要排序的字段
#$key: 作为查询条件的字段名,默认为Id
function querySub(&$parent, $table, $orderBy = null, $key = 'Id'){
#查询的sql语句
$sql = "SELECT * FROM $table WHERE $key = $parent[$key]";
#如果添加了排序字段
if($orderBy) {
#在$sql后面添加排序的sql语句
$sql .= ' ORDER BY '.$orderBy;
}
#执行sql语句并将结果集返回给$rows
$rows = query($sql);
#对$rows做循环
foreach ($rows as $i => $row) {
#对$rows的子数组做循环
foreach ($row as $field => $value) {
#如果子数组中存在空值
if($value === null) {
#将空值替换成"--"
$row[$field] = '--';
}
}
#重组数组
$rows[$i] = $row;
}
#将重组后的数组存入$parent数组,并以表名作为其键值
$parent[$table] = $rows;
}