0

我想将 addlashes() 应用于所有通过的帖子元素

$this->input->post('my_var');

我怎样才能做到这一点 ?wordpress 下是否有类似过滤器的功能?

4

1 回答 1

0

我认为你想要一些全球性的东西。我的想法是在 codeigniter 中编辑全局 post 函数以在所有内容上使用 addlashes。您可以在以下位置找到该功能:

/yourfolder/system/core/Input.php

您可以通过将其设置为全局来逃避它。

function post($index = NULL, $xss_clean = FALSE)
    {
        // Check if a field has been provided
        if ($index === NULL AND ! empty($_POST))
        {
            $post = array();

            // Loop through the full _POST array and return it
            foreach (array_keys($_POST) as $key)
            {
                $post[$key] = addslashes($this->_fetch_from_array($_POST, $key, $xss_clean));
            }
            return $post;
        }

        return addslashes($this->_fetch_from_array($_POST, $index, $xss_clean));
    }

尽管我并不认为它是修改全局函数的好解决方案,但这应该可以解决您的问题。

编辑:我看到 input->post已经这样做了,您不需要另外添加该功能。

于 2016-07-22T16:41:37.090 回答