清理数据库中的行并推送到数组

时间:2018-01-27 22:54:15

标签: php

我试图从我的数据库表中获取所有行,清理它并将其推送到数组。但是htmlspecialchars功能正在移除'键。来自$ row。

如果没有htmlspecialchars,我会得到像

这样的输出
  

数组([0] =>数组([ID] => 4 [IMAGE] => header1.jpg [LINK] =>博客   [NAME] => rajohan))

但是使用htmlspecialchars我得到了

  

数组([0] =>数组([0] => 4 [1] => header1.jpg [2] =>博客[3] =>   rajohan))

为什么删除[]内的所有内容?

function sanitize_array($data) {
    $data = array_map('trim', $data);
    $data = array_map('strip_tags', $data);
    $data = array_map('htmlspecialchars', $data, array(ENT_QUOTES), array('UTF-8'));
    return $data;
}

while ($row = $result->fetch_assoc()) {
    array_push($header, sanitize_array($row)); // Push rows to array
}

1 个答案:

答案 0 :(得分:0)

我通过使另一个函数将参数传递给htmlspecialchars找到了解决方案。

import pandas as pd

df = pd.DataFrame([[2, 2, 5.0], [12, 12, 4.5], [10, 5, 3.0],
                   [20, 2, 3.5], [3, 0, 0.0], [0, 0, 0.0]],
                  columns=['total', 'downloaded', 'avg_rating'])

df['Pct Diff'] = 0
df.loc[df['downloaded'] > 0, 'Pct Diff'] = (df['total'] - df['downloaded']) / df['total']

#   total   downloaded  avg_rating  Pct Diff
# 0 2   2   5.0 0.0
# 1 12  12  4.5 0.0
# 2 10  5   3.0 0.5
# 3 20  2   3.5 0.9
# 4 3   0   0.0 0.0
# 5 0   0   0.0 0.0