我可以用调试器在php中看到从ajax发送到php的对象吗


Can I see object sent from ajax to php in php with a debugger?

我遇到了一个问题,我对一个php文件进行了ajax调用,并将一个json对象作为参数从ajax/javascript发送到php,然后php应该对该对象进行一些逻辑处理,并用echo json_encode('whatever');返回它我的问题是,当我在php中处理javascript对象时,我是盲目的,因为我的ajax调用只有成功或错误函数才能"知道"php中发生了什么,但我想知道我可以使用什么机制来查看php中发生的事情,比如打印从ajax接收的对象并查看其中的内容。当我在ajax调用的php文件中时,如何进行调试??我试过chrome调试器和firebug,并遵循了这两个教程,但我甚至看不到从ajax调用的php文件,所以我无法在其中设置断点

function loadFormAdvanced(advancedFormVars) {
    var json = new Array();
    json = '[';
    for (var prop in advancedFormVars) {
        if (advancedFormVars.hasOwnProperty(prop)) {
            // or if (Object.prototype.hasOwnProperty.call(obj,prop)) for safety...
            json += '{"' + prop + ":" + advancedFormVars[prop] + '},';
        }
    }
    json += ']';

    $.ajax({
        url: 'AL_loadForm.php',
        type: 'POST',
        data: {
            advancedFormVars: json //"[{"OfferID:"OfferID"},{"offerName:"Offer Name"},{"campaignID:"CampaignID"},{"campaignName:"CampaignName"},{"offerIDFilt:"OfferID"},{"dates:"Dates"},]"
        },
        dataType: 'json',
        success: function (data) {
            alert(data);
        },
        error: function (request, error) {
            alert("Error: please fill the required fields");
        }
    });
}

我想成为abble,看看我的php文件中发生了什么,或者例如,看看$val变量的内容。

如果您想记录PHP端:

file_put_contents('somepath/dbg_'.date('Y-m-d').'.log',var_export($value,true));

一个可在php中写入的路径,因此它可以创建dbg_date.log或您想要的任何文件名。值将是您的帖子中的内容或您试图调试的内容。

还有像firebug或chromepp这样的插件。

在浏览器的java脚本控制台中显示对象:

success : function(data) {
    console.log(data);
},

出于调试目的,我通常使用浏览器手动打开ajax URL。这也适用于

但我想一开始我误解了你的问题。您想查看发送对象json的内容,但只需执行相同的操作:

console.log(json); // after the object has been created