使用 array_map 返回 MYSQL DB 结果

Posted

技术标签:

【中文标题】使用 array_map 返回 MYSQL DB 结果【英文标题】:Returning MYSQL DB results with array_map 【发布时间】:2015-12-16 08:55:11 【问题描述】:

我目前正在使用自定义 php 框架。它有一个类,旨在处理与 mysql 数据库的交互。

select 函数接受表和查询,通过 mysqli_fetch_array($result, MYSQL_ASSOC) 生成行,并返回一个常规数组(每一行是数组中的一个元素),如果没有返回结果,则返回 FALSE。

我正在考虑添加以下语句以自动始终从结果中删除转义斜杠

$data[] = array_map('stripslashes',$row );

由于该类在整个应用程序中用于从数据库返回任何内容,与始终记住在来自用户或第三方输入时始终使用带斜杠输出数据相比,这是一个明智的想法吗?

【问题讨论】:

如果你把它添加到Class,它将为所有人执行。而是在获取数据后在需要时执行此操作。 提及框架并相应地标记它总是有帮助的 【参考方案1】:

最好将配置开关添加到类中,并在从中获取数据时

如果要删除数据,则应通过开关,否则不会,

谢谢 阿米特

【讨论】:

谢谢。我真正想要解决的问题是在一个相对繁忙的网络应用程序上,默认情况下在所有行上运行 array_map 到 stripslashes 对性能来说是一个坏主意,或者差异可能可以忽略不计? 差异将非常微不足道,因此您可以使用它。 @thatguy

以上是关于使用 array_map 返回 MYSQL DB 结果的主要内容,如果未能解决你的问题,请参考以下文章

php中array_map和array_walk的使用对比

php中array_walk() 和 array_map()两个函数区别

array_map常用技巧

PHP array_map 一个有趣的函数

array_map() 函数

array_filter与array_map