所以我试图创建一个函数,生成基于多维数组的SQL查询字符串。PHP Implode关联数组
例子:
function createQueryString($arrayToSelect, $table, $conditionalArray) {
$queryStr = "SELECT ".implode(", ", $arrayToSelect)." FROM ".$table." WHERE ";
$queryStr = $queryStr.implode(" AND ",$conditionalArray); /*NEED HELP HERE*/
return $queryStr;
}
$columnsToSelect = array('ID','username');
$table = 'table';
$conditions = array('lastname'=>'doe','zipcode'=>'12345');
echo createQueryString($columnsToSelect, $table, $conditions); /*will result in incorrect SQL syntax*/
,你可以看到,我需要与3号线帮助,因为它是目前印刷
SELECT ID,用户名FROM表WHERE 姓氏和邮政编码
但它应该打印
SELECT ID,用户名FROM表WHERE 姓氏= 'DOE' AND邮政编码= '12345'
我看到你正在尝试创建一个SQL查询构建器。我现在告诉你这是一个巨大的痛苦......顺便说一句,如果你的'$ conditionalArray'为空(因为WHERE子句仍然在那里),那么这将产生无效的SQL ......而你不是适合LIKE,<>等 – quantumSoup 2010-07-18 18:30:14