javascript - 一個php的function ,怎麼給ajax 和 php 自己調用?

來源:互聯網
上載者:User
就是如果請求是ajax 發來的,那麼ajax 接收的是 echo 出來的資料;

要是是內部調用的,接收的是 return 的資料, 能不能寫個 if 語句,判斷是誰發來的,用 echo 或者 return ?

這個if 語句怎麼寫?

回複內容:

就是如果請求是ajax 發來的,那麼ajax 接收的是 echo 出來的資料;

要是是內部調用的,接收的是 return 的資料, 能不能寫個 if 語句,判斷是誰發來的,用 echo 或者 return ?

這個if 語句怎麼寫?

Ajax 請求比傳統請求的協議頭(header)多了個“x-requested-with XMLHttpRequest
”,可以利用它,request.getHeader("x-requested-with"); 為 null,則為傳統同步請求,為 XMLHttpRequest,則為 Ajax 非同步請求。

但是以上並不完全準確,可以在請求的時候加上一個希望返回的資料類型格式

當你有這種需求的時候,你就應該考慮你的代碼結構是不是出現了問題了。
可以是可以,但是不建議這麼做。
可以判斷$_GET或者$_POST

echo和return不寫在同一個函數裡。

tp裡有個IS_AJAX,你可以看看它是怎麼寫的。

如果你有需要,在你的返回結果集裡應該加一個欄位註明是那種類型,但是在平時開發的時候對這個是沒有需求的。不知你為何要區分echo和return?

一般不會用一個函數又echo又return的。
你可以這樣做

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

要內部調用就用a(),要AJAX的時候就用4AJAX().

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.