我遇到了一个问题,我对一个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