使用 $.ajax 向 PHP 发送布尔值

Mik*_*kko 5 php jquery json

我使用 jQuery 将数据发布到 PHP 后端$.ajax

$.ajax({
    url: "server.php",
    method: "post",
    data: {
        testVariable: true
    }
});
Run Code Online (Sandbox Code Playgroud)

在服务器端,我尝试die(gettype($_POST["testVariable"]));返回string.

我正在尝试将从 Javascript 发布的 JSON 数据保存到 MySQL 数据库,但布尔值被引用,这不应该发生。

插入的是{"testVariable": "true"}什么,我需要的是{"testVariable": true}. 我该如何实现?

raf*_*ell 2

这是预期的行为。在 PHP 上,如果需要,您需要使用三元或您喜欢的方法将字符串转换为布尔值。或者您可以发送 1/0 来表示布尔状态。

像这样转换:

$testVariable = ($_POST['testVariable'] === 'true'); //return the boolean evaluation of expression
Run Code Online (Sandbox Code Playgroud)