【发布时间】:2026-02-23 10:30:02
【问题描述】:
我正在尝试从我的 XML 中获取这 4 个不同的属性并将它们转换为表格数据。我已经设置了一个循环来输入信息。但是,当我尝试运行它时,我得到一个语法错误,意外的 T_STRING。我错过了什么?
foreach ($xml->machine as $machine)
{
"INSERT INTO 'table' (id, filePointer, amount, description) VALUES ('%s', '%s', '%s','%s')",
mysql_real_escape_string('$machine->id'),
mysql_real_escape_string('$machine->images->image->filePointer'),
mysql_real_escape_string('$machine->advertised_price->amount'),
mysql_real_escape_string('$machine>description'))
}
【问题讨论】:
-
您不需要将该字符串分配给变量吗?也许您也打算通过
sprintf运行它? -
您为什么要使用已弃用且很快将被完全删除的 mysql_ api 编写全新的代码?此时您应该使用 mysqli 或 pdo,在任何一种情况下,使用绑定变量都不需要转义字符串 --- 只需传递绑定变量。
-
此外,每个答案都掩盖了“table”实际上需要是“table”这一事实,尽管没有令人信服的理由在表名中使用反引号,除非它是 mysql 关键字。