数据表-如何将数组用作SQL where子句

时间:2019-08-08 14:47:41

标签: php database

我正在尝试制作一个可根据用户设置动态加载数据的数据表。

在服务器上处理脚本

我有一个当前用户拥有的分支机构数组。

$branchesOwned = $db->query('SELECT branchId FROM zapp_clt_branchesowner WHERE ownerId = ?', $ownerId)->fetchAll();

到目前为止一切顺利!

我试图创建一个辅助数组,我将在其中存储第一个数组的branchId:

$whereArray = [];

foreach ($branchesOwned as $result) {
array_push($whereArray, $result['branchId']);
}

现在在SSP综合大楼上,我有这个:

//$whereAll = "status = 'B Activo' AND branchID IN ('1')"; <--- WORKING
$whereAll = "status = 'B Activo' AND branchID IN {$whereArray}"; // <--- NOT WORKING


echo json_encode(
SSP::complex( $_GET, $sql_details, $table, $primaryKey, $columns, $whereResult = null, $whereAll)
);

您可以看到它是否直接在$ whereAll中将数组写入了

1 个答案:

答案 0 :(得分:1)

您可以执行以下操作:

$idsAsString = sprintf("('%s')", implode("', '", $whereArray));

$whereAll = "status = 'B Activo' AND branchID IN $idsAsString";