前端冷知識(持續更新2020.12.13)

(持續更新喲,點波關注和收藏吧)

!!!如要學習具體須要善於運用搜索引擎。!!!php

php冷知識

1.print和echo都不是真正的函數,但均可以以帶有參數的函數形式進行調用。最關鍵的是 : echo要比print速度快。html

printf()函數將一個格式化的字符串出入到瀏覽器中,正則表達式

sprintf()函數是返回一個格式化後的字符串。數組

2.雙引號""中,變量名稱將被變量值替代!!!(瀏覽器echo寫入一句話的時候記得\註釋)瀏覽器

單引號''中,變量名稱或其餘任何文本將不經修飾發送給瀏覽器;服務器

反向單引號``中,裏面的命令將試着看成服務器端命令行命令來執行。網絡

3.用gettype()函數獲取變量類型,用settype()函數改變變量類型,intval()轉爲整數多線程

類型有bool,int,double(浮點型),string,array,object,resource,NULL。函數

除此以外php還有不少特定的類型測試函數is_xxx(),如is_array(),is_scalar()等等。學習

4.isset()變量存在且值不爲null返回true,其他相反,

empty()變量存在且是一個非空非零的值時返回false,其他相反。

5.elseif等於else if,在一系列的級聯elseif語句中,只有第一個爲true條件下的語句將被執行。

6.若是沒有break,switch語句將執行case值爲true的如下全部代碼,例如

<?php switch ($a){  case 0:  echo "0";  case 1:  echo "1";  case 2:  echo "2";}?>

當$a的值爲0時將執行全部語句,當$a的值爲2時只執行最後一條語句。

7.==爲弱等於,===爲恆等於。

8.fopen()文件模式做用(ps:打開文件,從文件頭開始):

r(只讀)。(ps:無)

r+(讀寫)。(ps:無)

w(寫)。(ps:若是文件已存在,將刪除文件全部內容,如不存在將建立)

w+(讀寫)。(ps:無)

x(謹慎寫)。(ps:若是已有文件,則不會打開且返回false,且php產生一個警告)

x+(謹慎讀或寫)。(同上)

a(追加寫)。(ps:如已有文件,從文件末尾開始追加,如沒有,則建立。)

a(追加寫或讀)。(同上)

b(二進制)。(用於與其餘模式進行鏈接……)

t(文本)

(ps:以上字母后面是做用,並非嚴格意義的模式名稱)

9.fputs()fwrite()的別名,可用file_put_contents()代替fwrite()

10.feof()惟一參數是文件指針,如指向文件末尾則返回true。

使用feof()做爲文件結束的測試條件。

11.fgets()讀取文件內容,每次一行。

fgetss()同上,還可選擇過濾。

fgetcsv()當使用了分隔符(例如製表符或者逗號)的時候能夠選擇分行,

可用explode()implode()(同join()做用)join()(效果和explode()相反),strtok()(一次從字符串取一個子字符串) 分隔。

12.讀取整個文件:readfile()fpassthru()(ps:須要先用fopen()打開文件,而後再將文本指針做爲參數傳遞給fpassthru(),這樣就能夠把所指向文件內容發送到標準輸入,而後再將文件關閉。成功返回true失敗返回false。),file()(把結果發送到一個數組),file_get_contents()(以字符串的形式返回文件內容)。

13.讀取一個字符fgetc(),一次讀取一個字符。讀取任意長度fread()

14.查看文件是否存在file_exists()。肯定文件大小filesize()。刪除一個文件unlink()。能夠對文件指針進行操做,在文件中定位:rewind(),fseek(),ftell()。文件鎖定flock()(ps:沒法在NFS或其餘網絡文件系統中使用,沒法在多線程服務器API中使用)。

!!!如要學習具體須要善於運用搜索引擎。!!!

15.array()和echo同樣其實是一個語言結構而不是函數。(可用[]代替array()。)

sort()值從小到大排序), rsort()加r反序),usort()(加u自定義);

asort()(對數組進行排序並保持索引關係,arsort()加r反序,uasort()(加u自定義)

ksort()(按照鍵名排序),krsort()加r反序),uksort()(加u自定義)。

使用以上函數進行排序,或建立用戶自定義排序函數或使用array_multisort()函數。

也可以使用array_reverse()(與原來數組相反排序),shuffle()隨機。

「=」能夠將數組複製到另外一個數組,添加數組元素array_push(),刪除數組元素array_pop()sizeof()count()的別名函數。

經過count(),sizeof(),array_count_values() 統計數組元素。

16.訪問數組可用[]或{}。foreach()循環轉爲數組和對象打造,索引數組也可用list()(ps:能夠將一個數組分解爲一系列的值)each()(ps:返回數組的當前元素,並將下一個元素做爲當前元素,數組將記錄當前元素,如需屢次使用數組,用reset()函數將當前元素做爲數組的開始。)

extract()將數組轉化爲標量變量。

以相同方式使用或者修改數組中每個元素用array_walk()

17.鍵與值之間用=>符號。

18.<>與!=相同。+爲聯合操做符,嘗試把後面數組元素添加到前面數組的末尾,若具備相同的鍵則不被添加。

19.瞭解算術操做符,邏輯操做符,位操做符,比較操做符,數組操做符等。

20.數組瀏覽:each(),next(),使指針指向下一個元素

prev()(和next()相反),end(),逆序遍歷。

current()(返回數組中的當前單元),pos()(current()的別名)。

reset()(前文有)。

21.字符串截斷(默認除去字符\n,\r,\t,\x0B,\0,空格):

trim()(還除去字符串開始位置和結束位置的空格,並返回)

rtrim()的別名函數chop()(從結束處除去空格)

ltrim()(從開始處除去空格)

22.使用htmlspecialchars()函數過濾輸出至瀏覽器的字符串(實體編碼)。

使用str_replace(),substr_replace()函數進行過濾或替換子字符串。

使用nl2br()函數進行html格式化。使用substr()獲得某個固定格式字符串的一部分。

23.瞭解轉換規範支持的類型碼

24.字符串的排序:strcmp(),strcasecmp()(不區分大小寫),strnatcmp()(按照天然排序)

25.strlen()判斷字符長度

26.在字符串中查找字符串:strstr(),strchr(),strrchr(),stristr()

27.查找子字符串的位置:strpos()strrpos()

28.瞭解正則表達式,目前一般是perl風格,使用PCRE正則表達式,每一個表達式必須包含在一對分隔符中,最多見的分隔符是 / ,如/xluo/,若是要在正則表達式中匹配/須要用反斜槓\轉義,如/xluo​\/\//PCRE正則表達式語法連接。瞭解模式修飾符,連接

29.

30.

 

協議冷知識

1.HTTP是Hyper Text Transfer Protocol,超文本傳輸協議;

FTP是File Transfer Protocol,文件傳輸協議;

ftp的協議和http協議的主要區別在於ftp是須要用戶名和密碼才能訪問(匿名登錄除外),這樣作的目的在於有的文件只供特殊人訪問,而http協議是任何人均可以訪問的。

http和htp協議簡介連接

相關文章
相關標籤/搜索