1、php 如何區分伺服器端和客戶端
PHP是伺服器端腳本,並不存在真正意義上的客戶端,但是為了更清晰地劃分代碼職能,我專們通常將以輸出為目的屬的代碼認為是客戶端,其它認為是伺服器端。
事實上現在的PHP開發往往不是從零開始,而是會選擇一款基礎框架或開源產品然後進行二次開發,通常框架/開源產品都會採用M(模型)V(視圖)C(控制器)的三層架構模式,這個時候我們一般認為View是屬於客戶端的。
更極端一點的說,可以認為 echo 開頭的語句是客戶端代碼,而任何對象、函數及其他代碼都是伺服器端代碼。
2、在php中,伺服器端的命令執行與客戶端的命令執行有何不同之處呢?
php中,只有伺服器端對代碼做解釋,不可能由客戶端執行。
如果由客戶端執行,那不是php,而是JS。
兩者語言類型不同,沒有可比之處。
3、寫在html的php代碼是在客戶端執行還是在伺服器端?
如果你的html代碼里有php代碼,那麼你的文檔名肯定就隨之改變成 .php。所以就相當於整個文檔變為了php文檔,php文檔也能解析html代碼,所以在服務端執行
4、用PHP寫出顯示客戶端IP與伺服器IP的代碼
伺服器IP用:
echo(gethostbyname($SERVER_NAME));
客戶端IP用下面函數:
function iptype1 () {
if (getenv("HTTP_CLIENT_IP")) {
return
getenv("HTTP_CLIENT_IP");
}
else {
return "none";
}
}
function iptype2 () {
if (getenv("HTTP_X_FORWARDED_FOR")) {
return getenv("HTTP_X_FORWARDED_FOR");
}
else {
return "none";
}
}
function iptype3 () {
if (getenv("REMOTE_ADDR")) {
return getenv("REMOTE_ADDR");
}
else {
return "none";
}
}
function ip() {
$ip1 = iptype1();
$ip2 = iptype2();
$ip3
= iptype3();
if (isset($ip1) && $ip1 != "none" && $ip1 !=
"unknown") {
return $ip1;
}
elseif (isset($ip2) && $ip2
!= "none" && $ip2 != "unknown") {
return $ip2;
}
elseif
(isset($ip3) && $ip3 != "none" && $ip3 != "unknown") {
return $ip3;
}
else {
return "none";
}
}
使用時,直接調用ip();
5、php是在客戶端寫還是伺服器端寫?
這樣說吧,PHP在WEB領域應用最為廣泛,大多數網站都是用PHP做的。准確的說PHP是做網站的後端開發的,其實我這樣說還不算正確,PHP只是做後端開發的,但不只是網站而已
6、如何獲取PHP客戶端及伺服器端IP了?
客戶端的襲ip變數:
$_SERVER['REMOTE_ADDR'] :客戶端IP,也有可能是代理IP
$_SERVER['HTTP_CLIENT_IP']:代理端的IP,可能存在,也可能偽造
$_SERVER['HTTP_X_FORWARD_FOR'] :用戶在哪個ip上使用的id,可能存在,也可能偽造
服務端的ip變數:
$_SERVER['SERVER_NAME'] :需要使用函數gethostname()來獲得,這個無論是伺服器端還是客戶端都能正常顯示。
$_SERVER['SERVER_ADDR']:伺服器端的ip地址,在伺服器端測試ip地址,在客戶端測試正常
getnev 獲得系統的環境變數:
7、PHP實現指令跳轉客戶端與服務端
$_SERVER['PHP_SELF']
$_SERVER['SERVER_NAME']
$_SERVER['QUERY_STRING']
$_SERVER['HTTP_REFERER']
$_SERVER['REQUEST_URI']
獲取來訪地復址制 然後截取地址判斷 之後 header(「Location:你的網址」)
8、php客戶端與伺服器端怎麼通訊啊?
要實時通訊,必須建立socket。
或者客戶端每隔一段使用ajax主動向伺服器獲取指令
9、php system執行的是伺服器端還是客戶端的命令?
伺服器,相當於在伺服器上執行了該命令。
PHP不管做任何事都肯定是在伺服器上執行的。
10、php做伺服器端是啥意思
你php搭建的項目做伺服器,別人通過你的客戶端來訪問伺服器溝通處理等操作,客戶端可能是其他語言開發,需要做一個介面連接到你的伺服器端。