在PHP中使用public static function create(array $input)
{
$name = $input['name'];
$account_id = $input['account_id'];
...
....
return $tag;
}
时,假设%d
将始终尝试将参数强制转换为整数是否安全?
例如:
sprintf
我没有使用它来阻止SQL注入(在我的应用程序中已经有参数化查询),而是在URL中构造查询参数。
答案 0 :(得分:0)
显然documented:Variables will be co-erced to a suitable type for the specifier
。
将对象传递给需要字符串的对象(例如)将要求对象实现魔术__toString()
方法。 PHP将无法转换所有类型,只有它知道如何这样做。