警告:log()期望参数1为float,

时间:2017-05-02 15:30:51

标签: php

我收到此PHP警告:警告:log()期望参数1为float,字符串给出(路由到此文件)

我不知道为什么......我没有声明变量的类型。有什么帮助吗?

以下是代码:

    function sanitizeMysql ($string, $mysqli) {

        return $mysqli->real_escape_string($string);

    }

    function sanitizeHtml ($string) {

        return htmlspecialchars($string);

    }

    function log ($data, $mysqli) {

        $data = sanitizeMysql($data, $mysqli);
        $data = sanitizeHtml($data);

        if ($insert = $mysqli->prepare("INSERT INTO log (data) VALUES ('" . $data . "')")) {

            if ($insert->execute()) {

                return $mysqli->insert_id;

            } else {

                return $mysqli->error;

            }

        }  else {

            return $mysqli->error;

        }

    }

$url = $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
$error = "Unauthorized view of ". $url;
log($error, $mysqli);
exit();

$ mysqli被宣布并正在运作。有什么想法吗?

3 个答案:

答案 0 :(得分:5)

Log已经是PHP中的一个函数,只需将其重命名为其他东西

http://php.net/manual/en/function.log.php

答案 1 :(得分:1)

您想要重命名自定义函数log()。而不是log(),而是为您的函数使用不同的名称。

log()是一个(已经存在的)数学函数。

Read about log()

祝你好运!

答案 2 :(得分:-1)

我想你想要使用的正确日志功能是'error_log'。 'log'只是自然对数。

错误日志:http://php.net/manual/pt_BR/function.error-log.php

自然对数:http://php.net/manual/pt_BR/function.log.php