一个php的function ,怎么给ajax 和 php 自己调用?

发布于 2022-09-04 02:52:39 字数 140 浏览 10 评论 0

就是如果请求是ajax 发来的,那么ajax 接收的是 echo 出来的数据;

要是是内部调用的,接收的是 return 的数据, 能不能写个 if 语句,判断是谁发来的,用 echo 或者 return ?

这个if 语句怎么写?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

↘紸啶 2022-09-11 02:52:40

Ajax 请求比传统请求的协议头(header)多了个“x-requested-with XMLHttpRequest
”,可以利用它,request.getHeader("x-requested-with"); 为 null,则为传统同步请求,为 XMLHttpRequest,则为 Ajax 异步请求。

但是以上并不完全准确,可以在请求的时候加上一个希望返回的数据类型格式

疑心病 2022-09-11 02:52:40

当你有这种需求的时候,你就应该考虑你的代码结构是不是出现了问题了。
可以是可以,但是不建议这么做。
可以判断$_GET或者$_POST

谁的年少不轻狂 2022-09-11 02:52:40

echo和return不写在同一个函数里。

满栀 2022-09-11 02:52:40

tp里有个IS_AJAX,你可以看看它是怎么写的。

终难愈 2022-09-11 02:52:40

如果你有需要,在你的返回结果集里应该加一个字段注明是那种类型,但是在平时开发的时候对这个是没有需求的。不知你为何要区分echo和return?

一个人的旅程 2022-09-11 02:52:40

一般不会用一个函数又echo又return的。
你可以这样做

function a(){
    return $result;
}
function 4AJAX(){
    echo a();
}

要内部调用就用a(),要AJAX的时候就用4AJAX().

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文