中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP有哪些面試題

發布時間:2021-04-09 10:37:09 來源:億速云 閱讀:175 作者:小新 欄目:編程語言

這篇文章主要介紹PHP有哪些面試題,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

1. echo()、print()、print_r() 的區別

echo()、print() 是 PHP 語句;print_r() 是函數,

  • print()只能打印出簡單類型變量的值(如int,string),有返回值。

  • print_r()可以打印出復雜類型變量的值(如數組,對象)

  • echo 輸出一個或者多個字符串,無返回值

2. 字符串中單引號與雙引號的區別

  • 單引號不能解釋變量,而雙引號可以解釋變量。

  • 單引號不能轉義字符,在雙引號中可以轉義字符。

3. error_reporting 作用

error_reporting() 設置 PHP 的報錯級別并返回當前級別。

4. SESSION 與 COOKIE 的區別

  • session 存儲在服務器端,cookie 保存在客戶端。

  • session比較安全,cookie 用某些手段可以修改,不安全。

  • session 的運行依賴 sesseion id,而 session id 存在 cookie 中。如果禁用 cookie,session 會失效。(但可以通過其他方式實現,比如在 url 中傳遞 session id)。

  • session 可以放在 文件、數據庫或內存中。默認存儲在服務器的一個文件中。

5. get 和 post 的區別

get是顯式的,數據從url中可以看到,傳輸的數據量小,安全性低;

post是隱式的,傳送的數據量較大,安全性較高 。

6. 寫出下面代碼的執行結果

<?php
    $a = 12;
    $b = 012;
    $c = 0x12;
    echo $a,"\n",$b,"\n",$c;

解析:八進制12轉為二進制001010,二進制再轉為十進制為10。十六進制12轉為二進制00010010,二進制再轉為十進制18。所以結果為  12 10 18。

7. 解決 url 出現中文亂碼

使用 urlencode() 對中文進行編碼。

8. 把 GB2312 格式的字符串轉換成 UTF-8

iconv('GB2312','UTF-8','悄悄是別離的笙簫');

9. 字符串轉化為數組

$str = "hello word;From-ajiang";str_split($str, 3);
explode(";", $str);preg_split("/-/", $str);

10. 字符串替換函數

$str = 'linux and php';
str_replace('linux', 'windows', $str);
preg_replace('/linux|php/', 'js', $str);

11. 字符串查找函數

preg_match("/php/i", "PHP is the web scripting language of choice.");
$userinfo = "Name: <b>PHP</b> <br> Title: <b>Programming Language</b>";
preg_match_all ("/<b>(.*)<\/b>/U", $userinfo, $pat_array);
strpos("I love php, I love php too!","php");   // 首次匹配的位置
strrpos("I love php, I love php too!","php");  // 最后匹配的位置

12. 使用 redis 有哪些好處

  • 速度快:因為數據存在內存中,類似于HashMap,HashMap的優勢就是查找和操作的時間復雜度都是O(1)。

  • 支持豐富數據類型:支持string,list,set,sorted set,hash。

  • 支持事務:可以一次執行多個命令。失敗不會回滾,會繼續執行。

  • 豐富的特性:可用于緩存,消息,按key設置過期時間,過期后將會自動刪除

13. redis 相比 memcached 有哪些優勢

  • memcached所有的值均是簡單的字符串,redis作為其替代者,支持更為豐富的數據類型。

  • redis 的速度比 memcached 快很多 。

  • redis 可以持久化其數據

14. 在命令行下運行PHP腳本,同時傳遞參數

首先進入php安裝目錄,-f 參數指定要執行的 php 文件,參數直接接在文件名后面,多個參數用空格隔開。-r 表示直接執行 php 代碼 。

如果傳遞參數,腳本首先會檢查 $argc,以確保自變量的數量符合要求。然后會從 $argv 里提取出每一個自變量,把它們打印輸出到標準的輸出。

$ php -f d:/wamp/test.php [參數1 參數2 ...] $ php -r phpinfo();

15. crontab 定時任務語法

分 時 日 月 周 執行的程序

案例: 一個備份程序mybackup,需要在周一到周五下午1點和晚上8點運行,命令如下:

 0 13,20 * * 1,2,3,4,5 mybackup // 或 0 13,20 * * 1-5 mybackup

16. 鍵入網址再按下回車

  • 瀏覽器從地址欄的輸入中獲得服務器的 IP 地址和端口號;

  • 瀏覽器用 TCP 的三次握手與服務器建立連接;

  • 瀏覽器向服務器發送拼好的報文;

  • 服務器收到報文后處理請求,同樣拼好報文再發給瀏覽器;

  • 瀏覽器解析報文,渲染輸出頁面。

17. php 數組相關的函數

array_combine()-----通過合并兩個數組來創建一個新數組
array_chunk()-------將一個數組分割成多個
array_merge()-------把兩個或多個數組合并成一個數組
array_slice()-------在數組中根據條件取出一段值
array_diff()--------返回兩個數組的差集數組
array_intersect()---計算數組的交集
array_search()------在數組中搜索給定的值
array_splice()------移除數組的一部分且替代它
array_key_exists()--判斷某個數組中是否存在指定的key
array_flip()--------交換數組中的鍵和值
array_reverse()-----將原數組中的元素順序翻轉,創建新的數組并返回
array_unique()------移除數組中重復的值
range()-------------創建并返回一個包含指定范圍的元素的數組

18. PHP 數組排序

sort()   - 以升序對數組排序
rsort()  - 以降序對數組排序
asort()  - 根據值,以升序對關聯數組進行排序
ksort()  - 根據鍵,以升序對關聯數組進行排序
arsort() - 根據值,以降序對關聯數組進行排序
krsort() - 根據鍵,以降序對關聯數組進行排序

19. $_SERVER

// http://www.test.com/testA/test?name=aj&age=23
"HTTP_HOST" => "www.test.com"
"SERVER_NAME" => "www.test.com"
"SERVER_PORT" => "80"               // 服務器端口
"SERVER_ADDR" => "127.0.0.1"        // 服務器IP
"REMOTE_PORT" => "13675"            // 客戶端IP
"REMOTE_ADDR" => "127.0.0.1"        // 客戶端口
"REQUEST_URI" => "/testA/test?name=aj&age=23"          // 參數
"SCRIPT_NAME" => "/index.php"
"QUERY_STRING" => "s=//testA/test&name=aj&age=23"
"SCRIPT_FILENAME" => "F:/projectName/public/index.php" // 當前執行腳本路徑

20. 魔術方法

__construct(),類的構造函數
__destruct(),類的析構函數

__call(),在對象中調用一個不可訪問方法時調用
__callStatic(),用靜態方式中調用一個不可訪問方法時調用

__get(),獲得一個不存在的類成員變量時調用
__set(),設置一個不存在的類成員變量時調用

__isset(),當對不可訪問屬性調用isset()或empty()時調用
__unset(),當對不可訪問屬性調用unset()時被調用。

__sleep(),執行serialize()時,先會調用這個函數
__wakeup(),執行unserialize()時,先會調用這個函數
__toString(),類被當成字符串時的回應方法

__invoke(),調用函數的方式調用一個對象時的回應方法
__set_state(),調用var_export()導出類時,此靜態方法會被調用。

__clone(),當對象復制完成時調用
__autoload(),嘗試加載未定義的類
__debugInfo(),打印所需調試信息

21. PHP 的基本變量類型

  • 四種標量類型:boolean (布爾型)、integer (整型)、float (浮點型, 也稱作 double)、string (字符串)

  • 兩種復合類型:array (數組)、object (對象)

  • 兩種特殊類型:resource(資源)、NULL(NULL)

以上是“PHP有哪些面試題”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

蒲城县| 邹平县| 象州县| 亚东县| 深泽县| 西和县| 龙州县| 木里| 南城县| 德令哈市| 会昌县| 资讯| 娄底市| 阿克陶县| 上杭县| 青神县| 昔阳县| 桂平市| 那坡县| 纳雍县| 尚志市| 颍上县| 高唐县| 涡阳县| 化德县| 博野县| 女性| 舒兰市| 莎车县| 安乡县| 凤翔县| 临武县| 祁门县| 七台河市| 兰州市| 延庆县| 阿勒泰市| 永泰县| 宝鸡市| 南开区| 砀山县|