每天5分鐘,細讀PHP手冊-12

錯誤處理

  • error_reporting設置錯誤級別;
  • display_errors控制腳本是否輸出錯誤;
  • log_errorserror_log指令控制錯誤日誌;
  • PHP7將很多錯誤當做異常處理,但catch的是ERROR類,不是Exception;

異常處理

  • 異常對象不能clone;
  • 自定義Exception時最好調用parent::construct,來確認所有變量都正確初始化;

生成器

  • 生成可遍歷的對象,用時生成,資源佔用少;
  • yeild返回值,但不結束,保存執行狀態,直至下次調用;
  • yeild無返回值,則返回null;

引用

  • PHP中的引用意味着使用不同的名字訪問同一個變量,並不像C的指針;
  • 如果在一個函數內部給一個聲明爲 global 的變量賦於一個引用,該引用只在函數內部可見。可以通過使用 $GLOBALS 數組避免這一點;

預定義變量

  • 超全局變量:在全部作用域中始終可用的變量;
  • GLOBAL、SERVER、GET、POST、COOKIE等;

預定義異常

  • Exception
  • ErrorException

預定義接口

  • Traversable:檢測一個類是否可以使用foreach進行遍歷的接口,這個接口沒有任何方法,它的作用僅僅是作爲所有可遍歷類的基本接口;
  • Iterator:可在內部迭代自己的外部迭代器或類的接口;
  • IteratorAggregate:外部迭代器接口;
  • ArrayAccess:提供像數組一樣訪問對象的能力的接口;
  • Serializable:自定義序列化的接口;
  • Closure:代表匿名函數的類,在過去被認爲是一個實現細節,但現在可以依賴它自帶的一些方法做一些事情;
  • Generator:從generators返回的,不能通過new實例化;

上下文

  • PHP 提供了多種上下文選項和參數,可用於所有的文件系統或數據流封裝協議。上下文(Context)由stream_context_create()創建。選項可通過 stream_context_set_option() 設置,參數可通過stream_context_set_params()設置
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章