我从谷歌那里得到了这个代码,它满足了我的要求,但我不理解这一行的含义:
substr($query,0,strlen($query)-2)
有人可以向我解释一下吗?
<?php
function insert($tablename, $parameter_order, $values)
{
$query = "insert into $tablename (";
foreach($parameter_order as $po)
{
$query .= $po.', ';
}
$query = substr($query,0,strlen($query)-2).') values (';
foreach($values as $v)
{
$query .= "'$v', ";
}
$query = substr($query,0,strlen($query)-2).');';
return $this->makeQuery($query);
}
?>
答案 0 :(得分:1)
该行会从$query
中删除最后一个逗号和空格。这些字符已添加到foreach
循环中,以便将$parameter_order
的元素粘合在一起。
请注意,使用implode()
函数通常可以更好地完成此标准任务:
$query = "insert into $tablename (" . implode (', ', $parameter_order) . ' ) values (';
答案 1 :(得分:1)
这些功能正是这样做的:
class Baap{ int h = 4; public int getH(){ System.out.println("Beta " + h); return h; } } class Beta extends Baap{ int h = 44; public int getH(){ System.out.println("Beta " + h); return h; } public static void main (String [] args) { Baap b = new Beta(); System.out.println(b.h + " " + b.getH()); } }
用于从另一个字符串生成指定长度的子字符串。
substr()
将返回提供的字符串的长度。
代码strlen()
从substr($query,0,strlen($query)-2)
循环中删除逗号和空格。