1. 字符串中的單引號(hào)與雙引號(hào)的區(qū)別?
兩者均能表示字符串,不同之處在于雙引號(hào)包含的變量($str)會(huì)被自動(dòng)替換成變量的實(shí)際數(shù)值,而單引號(hào)中包含的變量則按照普通字符串輸出。
需要注意的是:對(duì)轉(zhuǎn)義符的使用,在單引號(hào)的字符串中,使用單引號(hào)時(shí),只要對(duì)單引號(hào)進(jìn)行進(jìn)行轉(zhuǎn)義(\''); 單在雙引號(hào)字符串中還要注意 雙引號(hào),$等字符的使用,這些特殊字符都需要轉(zhuǎn)義符來先轉(zhuǎn)換。
2.? if(‘0’ == “ttt”){echo '相等'} else {echo‘不相等’}; 輸出結(jié)果?
總結(jié)一句話:0等于任何非數(shù)字開頭的字符串。 由于‘0’ 即0 ,“ttt” 與0比較也是0 ,故兩者相等。如需這個(gè)條件不成立,則需要使用判斷是否全等 “===”, 既要判斷數(shù)值是否相等還需判斷類型是否一致。
3.? 對(duì)于數(shù)據(jù)類型轉(zhuǎn)換有兩種方法
a. 強(qiáng)制轉(zhuǎn)換,如: 強(qiáng)轉(zhuǎn)為integer, $a = (integer)'123abd'; 結(jié)果為$a=123;(注意:字符串只被截取到非數(shù)字前,具體看第4點(diǎn))
b. 使用settype函數(shù), settpye(參數(shù)1:變量,參數(shù)二:‘轉(zhuǎn)換類型’);如:$a='123abc'; settype($a,'integer'); echo $a;? 輸出結(jié)果為:123; 需要注意的是:參數(shù)1放的必須是變量,且settype函數(shù)的返回值類型是BOOL。
4. 字符串轉(zhuǎn)換為整型或者浮點(diǎn)型?
? 如果字符串是以數(shù)字開頭的,就會(huì)先把數(shù)字部分轉(zhuǎn)換為整型,再舍去后面的字符串;如果數(shù)字中含有小數(shù)點(diǎn),則會(huì)去到小數(shù)點(diǎn)前一位。
5. 布爾類型
在php中,不是只有false值才為假,在一些特殊情況下bool值也被認(rèn)為是false。如 0,? 0.0, “0” , “ ”(空字符串);
6. 復(fù)合數(shù)據(jù)類型
? ? Array(數(shù)組)和Object(對(duì)象), 兩者能夠相互轉(zhuǎn)換,
如$array = array('p','h','p');
$obj = $array;
foreach ($obj as? $value) {
echo $value;
}???? 輸出:php
php的數(shù)組和iOS有所不同 ,php數(shù)組是可以鍵值對(duì)形式存入,它不是根據(jù)索引取值。
7. 常量
php中的常量和iOS中的宏定義一致。如使用常量定義一個(gè)網(wǎng)站,和一個(gè)域名。如:
define(‘WEB_SITE’, 'http://www.baidu.com');
define(’SITE_NAME’, '百度');? define函數(shù)的返回值為BOOL類型來判斷該常量是否已經(jīng)定義過;
8. 變量
變量賦值有三種方法:直接賦值,間接賦值,引用賦值
間接賦值:間接賦值后兩個(gè)變量使用各自的內(nèi)存,互不干擾
引用賦值:賦值后兩個(gè)變量執(zhí)向的是同一塊內(nèi)存地址,當(dāng)其中一個(gè)變量的值改變,另一個(gè)變量的也隨著改變。使用 & 符號(hào)來表示引用。(個(gè)人覺得可以理解為類似于雙指針)
9. 變量作用域
局部變量,全局變量,靜態(tài)變量。作用域和其他語言一樣,需要注意的是:在php中 全局變量在函數(shù)中使用需要在函數(shù)中先用global聲明;如:
$a? = 0;
function foo(){
global $a;
?$a ++;
echo $a;
}
10.? 預(yù)定義變量
$_SERVER['REMOTE_ADDR'] :正在瀏覽當(dāng)前頁面用戶的IP地址
$_SERVER['REMOTE_HOST'] : 正在瀏覽當(dāng)前頁面用戶的主機(jī)名
$_SERVER['REMOTE_PORT'] : 用戶連接到服務(wù)器時(shí)使用的端口
還有$_SESSION , $_POST, $_GET , $GLOBALS。
11.? 拓展
[HTTP_HOST] : 主機(jī)名
[HTTP_REFERER] : 用戶跳轉(zhuǎn)到當(dāng)前頁面前網(wǎng)頁地址
[SERVER_NAME] ,[SERVER_ADDR] :用戶IP地址