在条件中使用数组

问题描述 投票:0回答:1

我有一个名为$ req_dep的数组数据。这是我var_dump时的样子。

array(2) { [0]=> int(41) [1]=> int(765) }

我想在查询中使用该数据

  select * from dbo.RequisitionTable 
  where RequestorID = '$ID'
  and RequestorDepartmentID in ($req_dep)
  and IsProcessedToHire=0 
  and IsHold = 0
  and IsRejected = 0

但是它总是出现错误“数组到字符串的转换”。如何在那样的条件下使用数组?

谢谢

php sql sql-server codeigniter
1个回答
0
投票

首先,我会要求您使用prepared statements o防止自己遭受SQL注入。

现在您必须为查询中的相应检查提供数组值,这是:

select * from dbo.RequisitionTable 
  where RequestorID = '$array[0]'
  and RequestorDepartmentID in ($array[1])
  and IsProcessedToHire=0 
  and IsHold = 0
  and IsRejected = 0

注意:-我假设$array是您var_dump()的可变名称。如果不同,请更改名称

© www.soinside.com 2019 - 2024. All rights reserved.