⑴ 一個php頁面如何響應多個請求呢
這樣是可行的,不過if效率太低 我建議用switch
if 你需要在每個判斷語句結束後面加exit 才行
而switch 語句結構就沒這樣的問題
如果你實在是想 使用if 可以用匿名函數包上,這樣可以不影響上下執行
其實剛才那樣的代碼結構 如果太多傳值 其實很不好維護,在真正做項目的時候,還是建議使用php框架的面相對象寫法。
⑵ php怎麼響應客戶端發送http請求
使用$_POST['參數名']處理post方法提交的參數,$_GET['參數名']處理get方法參數.
eg:
如果url 為: index.html?name=123&pwd=123
<?php
$name = $_GET['name'];
$pwd = $_GET['pwd'];
do something;
?>
如果url 為: index.html
name=123&pwd=123
<?php
$name = $_POST['name'];
$pwd = $_POST['pwd'];
do something;
?>
如果只是處理如何要跳轉到其他頁面,可以用header("Location: 文件名");
如果是網頁和php混合,在需要使用<?php php語句;?>處理就行;使用echo可以輸出一些值到網頁中.
⑶ PHP 執行腳本還沒結束網頁無法響應
無法響應有很多種原因,你這個最大的原因是php腳本的執行超時,建議修改。
⑷ php 怎麼響應button的onclick事件
PHP是伺服器端的腳本語言,只能只能通過js,jquery等來實現。
假設你的button元素添加id為myBtn
<script>
document.getElementById("myBtn").onclick=function(){
alert('你點擊了按鈕');
};
</script>
⑸ php後台怎麼設置響應內容格式
通過php header函數來設置,下面是幾個常用的數
據類型
header('Content-Type:application/json;charset=utf-8');
header('Content-Type:text/xml; charset=utf-8');
header('Content-Type:text/html; charset=utf-8');
這是幾種比較長用的數據格式
⑹ php怎麼響應客戶端發送http請求
獲取請求代碼如下:
#測試網址: http://localhost/blog/testurl.php?id=5
//獲取域名或主機地址
echo $_SERVER['HTTP_HOST']."
"; #localhost
//獲取網頁地址
echo $_SERVER['PHP_SELF']."
"; #/blog/testurl.php
//獲取網址參數
echo $_SERVER["QUERY_STRING"]."
"; #id=5
//獲取用戶代理
echo $_SERVER['HTTP_REFERER']."
";
//獲取完整的url
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'];
#http://localhost/blog/testurl.php?id=5
//包含埠號的完整url
echo
http://'.$_SERVER['SERVER_NAME'].':'.$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
#http://localhost:80/blog/testurl.php?id=5
//只取路徑
$url='http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"];
echo dirname($url);
#http://localhost/blog
if (in_array("Mark", $people))
{
echo "匹配已找到";
}
else
{
echo "匹配未找到";
}
⑺ php怎麼樣提前響應,後續代碼在後台繼續運行
ignore_user_abort(true); // 後台運行,這個只是運行瀏覽器關閉,並不是直接就中止返回200狀態。
set_time_limit(0); // 取消腳本運行時間的超時上限
rundata();
$i=0;
do{
sleep(60); // 休眠1分鍾
$i++;
error_log($i.'-',3,'aa.txt');
}while(true);
function rundata(){//do something
}
?>
⑻ php怎麼響應客戶端發送http請求
http請求有get,post。
php發送http請求有三種方式[我所知道的有三種,有其他的告訴我]。
1. file_get_contents();詳情見:http://www.jb51.net/article/41833.htm
2. curl發送請求。
3. fsocket發送。
下面說使用curl發送。
首先環境需要配置好curl組件。
在windows中讓php支持curl比較簡單:
在php.ini中將extension=php_curl.dll前面的分號去掉,
有人說需要將php根目錄的libeay32.dll和ssleay32.dll需要拷貝到系統目錄下去。我實驗不拷貝也可以。
在linux中,如果使用源碼安裝,需要在make 之前,./configure --with-curl=path,
其中,path是你的 libcurl庫的位置,比如你安裝libcurl庫之後,
path可能就是/usr/local/,libcurl可以是靜態庫,也可以是動態庫。
注意libcurl庫configure的時候,可以將一些不需要的功能去掉,
比如ssl , ldap等。在php configure的時候,會去檢查libcurl中某些功能是否被開啟,進而去相應地調整生成的php。
⑼ php頁面響應時間長怎麼優化
php處理其實很快的;目測是資料庫設計的不合理;或者是獲取數據的sql需要優化;時間應該是耗在了獲取資料庫數據的過程中了;另外可以開啟gzip壓縮;加快靜態文件的速度;建站寶盒php優化技術
⑽ PHP程序寫得越多發現響應速度越慢,請問寫程序中應該注意些什麼我是新手!怎麼提高程序響應時間!
舉個簡單的例子
循環一個數組時需要計算數組的長度.
通常,我們這么寫
//$arr是一個數組;
for($i=0;$i<count($arr);$i++){
/******這就是一個速度較慢的循環,因為每一次循環的時候都要運行count()計算數組長度*******/
}
//正確的寫法應該是
$count=count($arr);
for($i=0;$i<$count;$i++){
/*****代碼*******/
}
//再舉個例子
echo Ƈ'.ƈ'慢;
echo Ƈ',ƈ'快;
//還有帶引號''和雙引號"",單引號更快;
//數組的鍵位例如$arr[key]的寫法就不如$arr['key']的快
/*同樣的,php在鏈接資料庫或者操作一些文件的時候;要做垃圾處理,在資源使用完畢時,要及時的關閉鏈接通道,清空結果集和占內存的變數;*/
/*還有很重要的一點,能在php程序里執行的任務,就不要跑到mysql里執行,好好的寫你的查詢語句*/