日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

all any 或 此运算符后面必须跟_PHP程序员必须会的 45 个PHP 面试题(第一部分)...

發布時間:2025/4/16 php 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 all any 或 此运算符后面必须跟_PHP程序员必须会的 45 个PHP 面试题(第一部分)... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Q1: == 和 === 之間有什么區別?

話題: PHP
困難: ?
  • 如果是兩個不同的類型,運算符 == 則在兩個不同的類型之間進行強制轉換
  • === 操作符執行’類型安全比較‘

這意味著只有當兩個操作數具有相同的類型和相同的值時,它才會返回 TRUE。

1 === 1: true 1 == 1: true 1 === "1": false // 1 是一個整數, "1" 是一個字符串 1 == "1": true // "1" 強制轉換為整數,即1 "foo" === "foo": true // 這兩個操作數都是字符串,并且具有相同的值

為了能夠通過引用傳遞變量,我們在其前面使用&,如下所示:

$var1 = &$var2

Q3: $GLOBAL 是什么意思?

話題: PHP
困難: ?$GLOBALS是關聯數組,包含對腳本全局范圍內當前定義的所有變量的引用。

Q4: ini_set () 有什么用處?

話題: PHP
困難: ?

PHP 允許用戶使用 ini_set () 修改 php.ini 中提到的一些設置。此函數需要兩個字符串參數。第一個是要修改的設置的名稱,第二個是要分配給它的新值。

給定的代碼行將啟用腳本的 display_error 設置 (如果它被禁用)。

ini_set('display_errors', '1');

我們需要將上面的語句放在腳本的頂部,以便該設置一直保持啟用狀態,直到最后。此外,通過 ini_set () 設置的值僅適用于當前腳本。此后,PHP 將開始使用 php.ini 中的原始值。

Q5: 我應該在什么時候使用 require 和 include 呢?

話題: PHP
困難: ??

require() 函數與 include() 函數相同,只是它處理錯誤的方式不同。如果出現錯誤,include() 函數會生成警告,但腳本會繼續執行。require() 函數會產生致命錯誤,腳本會停止。

我的建議是 99.9% 的時間里只使用 require_once。

使用 require 或 include 代替意味著您的代碼在其他地方不可重用,即您引入的腳本實際上是在執行代碼,而不是提供類或某些類功能庫。

Q6: PHP 中的 stdClass 是什么?

主題: PHP
難度: ??

stdClass 只是將其他類型強制轉換為對象時使用的通用” 空’’類。stdClass 不是 PHP 中對象的基類。這可以很容易地證明:

class Foo{} $foo = new Foo(); echo ($foo instanceof stdClass)?'Y':'N'; // 輸出'N'

對于匿名對象,動態屬性等很有用。

考慮 StdClass 的一種簡單使用場景是替代關聯數組。請參見下面的示例,該示例顯示 json_decode() 如何允許獲取 StdClass 實例或關聯數組。

同樣但未在本示例中顯示的SoapClient::__soapCall返回一個StdClass實例。

//帶有StdClass的示例 $json = '{ "foo": "bar", "number": 42 }'; $stdInstance = json_decode($json);echo $stdInstance - > foo.PHP_EOL; //"bar" echo $stdInstance - > number.PHP_EOL; //42//Example with associative array $array = json_decode($json, true);echo $array['foo'].PHP_EOL; //"bar" echo $array['number'].PHP_EOL; //42

Q7: PHP 中的 die () 和 exit () 函數有什么不同?

話題: PHP
困難: ??

沒有區別,它們是一樣的。 選擇die()而不是exit()的唯一好處可能是你節省了額外鍵入一個字母的時間.

Q8: 它們之間的主要區別是什么

話題: PHP
困難: ??

const 和 define 的根本區別在于,const 在編譯時定義常量,而 define 在運行時定義常量。

const FOO = 'BAR'; define('FOO', 'BAR');// but if (...) {const FOO = 'BAR'; // 無效 } if (...) {define('FOO', 'BAR'); // 有效 }

同樣在 PHP 5.3 之前,const 命令不能在全局范圍內使用。你只能在類中使用它。當你想要設置與該類相關的某種常量選項或設置時,應使用此選項。或者你可能想要創建某種枚舉。一個好的 const 用法的例子是擺脫了魔術數字。

Define 可以用于相同的目的,但只能在全局范圍內使用。它應該僅用于影響整個應用程序的全局設置。

除非你需要任何類型的條件或表達式定義,否則請使用 consts 而不是 define()—— 這僅僅是為了可讀性!

Q9: isset () 和 array_key_exists () 之間有什么區別?

話題: PHP
困難: ??
  • array_key_exists 它會告訴你數組中是否存在鍵,并在 $a 不存在時報錯。
  • 如果 key 或變量存在且不是 null,isset 才會返回 true。當 $a 不存在時,isset 不會報錯。

考慮:

$a = array('key1' => 'Foo Bar', 'key2' => null);isset($a['key1']); // true array_key_exists('key1', $a); // trueisset($a['key2']); // false array_key_exists('key2', $a); // true

Q10: var_dump () 和 print_r () 有什么不同?

話題: PHP
困難: ??
  • var_dump函數用于顯示變量 / 表達式的結構化信息,包括變量類型和變量值。數組遞歸瀏覽,縮進值以顯示結構。它還顯示哪些數組值和對象屬性是引用。
  • print_r()函數以我們可讀的方式顯示有關變量的信息。數組值將以鍵和元素的格式顯示。類似的符號用于對象。

考慮:

$obj = (object) array('qualitypoint', 'technologies', 'India');

var_dump($obj)將在屏幕的輸出下方顯示:

object(stdClass)#1 (3) {[0]=> string(12) "qualitypoint"[1]=> string(12) "technologies"[2]=> string(5) "India" }

print_r($obj)將在屏幕的輸出下方顯示。

stdClass Object ( [0] => qualitypoint[1] => technologies[2] => India )

Q11: 解釋不同的 PHP 錯誤是什么

話題: PHP
困難: ??
  • notice 不是一個嚴重的錯誤,它說明執行過程中出現了一些錯誤,一些次要的錯誤,比如一個未定義的變量。
  • 當出現更嚴重的錯誤,如 include () 命令引入不存在的文件時,會給出警告 warning。 這個錯誤和上面的錯誤發生,腳本都將繼續。
  • fatal error 致命錯誤將終止代碼。未能滿足 require () 將生成這種類型的錯誤。

Q12: 如何在 PHP 中啟用錯誤報告?

話題: PHP
困難: ??

檢查 php.ini 中的 “display_errors” 是否等于 “on”,或者在腳本中聲明 “ini_set('display_error',1)”。

然后,在你的代碼中包含 “ERROR_REPORTING(E_ALL)”,以便在腳本執行期間顯示所有類型的錯誤消息。

Q13: 使用默認參數聲明某些函數

話題: PHP
困難: ??
思考:function showMessage($hello = false){echo ($hello) ? 'hello' : 'bye'; }

Q14: PHP 是否支持多重繼承?

話題: PHP
困難: ??
PHP 只支持單一繼承;這意味著使用關鍵字’extended’只能從一個類擴展一個類。

Q15: 在 PHP 中,對象是按值傳遞還是按引用傳遞?

話題: PHP
困難: ??

在 PHP 中,通過值傳遞的對象。

Q16:$a != $b 和 $a !== $b ,之間有什么區別?

話題: PHP
困難: ??!=表示不等于(如果 $a 不等于 $b,則為 True),!==表示不全等(如果 $a 與 $b 不相同,則為 True).

Q17: 在 PHP 中,什么是 PDO?

話題: PHP
困難: ??

PDO 代表 PHP 數據對象。

它是一組 PHP 擴展,提供核心 PDO 類和數據庫、特定驅動程序。它提供了供應商中立、輕量級的數據訪問抽象層。因此,無論我們使用哪種數據庫,發出查詢和獲取數據的功能都是相同的。它側重于數據訪問抽象,而不是數據庫抽象。

Q18: 說明我們如何在 PHP 中處理異常?

Topic: PHP
Difficulty: ??
當程序執行出現異常報錯時,后面的代碼將不會再執行,這時 PHP 將會嘗試匹配第一個 catch 塊進行異常的處理,如果沒有捕捉到異常程序將會報致命錯誤并顯示”Uncaught Exception”。

可以在 PHP 中拋出和捕獲異常。

為了處理異常,代碼可以被包圍在”try” 塊中.

每個 try 必須至少有一個對應的catch塊 。多個不同的 catch 塊可用于捕獲不同類的異常。

在 catch 塊中也可以拋出異常(或重新拋出之前的異常)。

思考:

try {print "this is our try block n";throw new Exception(); } catch (Exception $e) {print "something went wrong, caught yah! n"; } finally {print "this part is always executed n"; }

Q19: 區分 echo 和 print ()

Topic: PHP
Difficulty: ??

echo 和 print 基本上是一樣的。他們都是用來打印輸出數據的。

區別在于:

  • echo 沒有返回值,而 print 的返回值為 1,因此 print 可以在表達式中使用。
  • echo 可以接受多個參數一起輸出 (但是這種多個的輸出方式很少見),而 print 一次只可以輸出一個參數。
  • echo 的輸出比 print 效率要高一些 .

很多PHPer在進階的時候總會遇到一些問題和瓶頸,業務代碼寫多了迷茫沒方向,不知道該從哪兒入手去提升自己?!芾碚砹艘恍┵Y料,有 騰訊 等一線大廠進階知識體系 可供參考(相關學習資料以及筆面試題)

覆蓋各個技術棧:分布式架構、高可擴展、高性能、高并發、服務器性能調優、TP6,laravel,YII2,Redis,Swoole、Swoft、Kafka、Mysql優化、shell腳本、Docker、微服務、Nginx等多個知識點高級進階干貨歡迎加入我的官方群啊 點擊此處

總結

以上是生活随笔為你收集整理的all any 或 此运算符后面必须跟_PHP程序员必须会的 45 个PHP 面试题(第一部分)...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。