Database error: Invalid SQL: WHERE id IN (91220,91222,91232,91233,91244,91263,

Database error: Invalid SQL: WHERE id IN (91220,91222,91232,91233,91244,91263,

下面的 SQL 在 PHP 脚本中回显时仅显示 WHERE id IN (91220,91222,91232,91233,91244,91263,91264,91277)

请帮我看看 SQL 有什么问题。

$sql = "UPDATE customers SET customers.name=AES_ENCRYPT('" . self::PII_OBFUSCATE_NAME . "','" . AES_CRYPT_KEY . "')"
    . ", address1=AES_ENCRYPT('" . self::PII_OBFUSCATE_ADDRESS1 . "','" . AES_CRYPT_KEY . "')"
    . ", day_phone=AES_ENCRYPT('" . self::PII_OBFUSCATE_PHONE . "','" . AES_CRYPT_KEY . "')"
    . ", nite_phone=AES_ENCRYPT('" . self::PII_OBFUSCATE_PHONE . "','" . AES_CRYPT_KEY . "')"
    . (is_array($customers_to_obfuscate))
        ? " WHERE id IN (" . implode(",", $customers_to_obfuscate) . ")"
        : " WHERE id = '$customers_to_obfuscate'";

您需要检查三元运算符中的括号。它必须如下所示:

((is_array($orders_to_obfuscate)) ? " WHERE id IN (" . implode(",", $orders_to_obfuscate) . ")" : " WHERE id = '$orders_to_obfuscate'");