2016-09-06 25 views

回答

0

您不能將數組分配給常量。試着這樣做:

define('PERMANENT_EMPLOYEE', json_encode(array('1','2','3'))); 

$sql = 'SELECT * from employee where id IN(' . implode(',', json_decode(PERMANENT_EMPLOYEE, true)) . ')'; 
+0

對不起這是不工作。 – Pallavi

0

你需要傳遞一個字符串,如您使用數組現在

define("PERMANENT_EMPLOYEE","'1','2','3'"); 

echo 'SELECT * from employee where id IN ('.PERMANENT_EMPLOYEE.')'; 

我已經以這種方式

+0

對不起。這不起作用。 – Pallavi

0

使用PHP檢查其加入功能然後寫下你的查詢如下: -

$ids = join(',',[1,2,3]); 
$sql = "SELECT * FROM employee WHERE id IN ($ids)"; 

如果你想通過常量使用數組,那麼你應該使用serialize

define('PERMANENT_EMPLOYEE',serialize(array(1,2,3))); 
$ids = join(',',unserialize(PERMANENT_EMPLOYEE)); 
$sql = "SELECT * FROM employee WHERE id IN ($ids)"; 
+0

謝謝你回答。它非常嚴格,我必須使用常量,請提出一個解決方案,使用常量 – Pallavi