摘要:數組代替沒有函數調用的消耗多分支選擇代替多個順便說一下當只有一個正確的輸出但是中間要排除很多的錯誤是不要用多個可以這樣會是代碼優雅一點面向對象與面向過程的選擇能簡化的事情盡量簡化不要事事都想建一個類再來做類的實例化的消耗比函數調用更耗內存類
數組
$arr[] = "x"; 代替 array_push($arr, "x"), 沒有函數調用的消耗
多分支選擇
switch case代替多個if else
順便說一下, 當只有一個正確的輸出, 但是中間要排除很多的錯誤是, 不要用多個if else, 可以這樣,會是代碼優雅一點
function demo(){ if () return false; if () return false; if () return false; return "x"; }
面向對象與面向過程的選擇
能簡化的事情, 盡量簡化, 不要事事都想建一個類再來做, 類的實例化的消耗比函數調用更耗內存, 類的實例化要在是分配堆內存, 不是棧內存, 當然這和代碼可讀性比起來, 都是小事
如果要擴展性, 肯定是需要抽象的, 就面向對象
盡量使用php自帶的函數
不要想到自己實現, php自帶的函數都是使用c語言來寫的, 你用php寫的運行效率能比c高?
要實現這個盡量通讀php.net, 知道要實現什么功能在哪里找, 不要盲目,
關于命名
一定要語義話, 看了laravel 我真覺得這么多年變量函數命名都是假的
這是php, 不是c/c++
在c中i++只需要一條cpu指令, 所以我一直以為$i++的效率很高, 但是我看到的框架(比如tp)都沒用使用$i++, 而是使用$i += 1, 才發現我太年輕了, 在php中$i++需要4條opcodes
內存泄漏
php中一般不會內存泄漏的(運行完了就退出了, 沒有常駐進程), 但我就遇到過同事寫的程序, 莫名奇妙的返回空的頁面, 但是看代碼邏輯好像又沒問題, 用xdebug調試才發現, 遞歸沒有出口導致無限調用, 所以是程序就有可能出現內存泄漏
但是也要注意有的php server是常駐進程的,
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/21953.html
摘要:和同步發布的是的。和支持,包括現成的和配置及數據源。更加靈活的提示,可以禁用和啟用該提示并更改警告級別。導航器顯示目標。新的測試運行器支持。新的修復程序支持。版本控制增強功能支持工作副本,各種和支持增強功能。 和Java8同步發布的是Oracle的NetBeansIDE 8。NetBeans IDE 8.0 提供了現成的代碼分析器和編輯器,可在其中使用最新的 Java 8 技術 -- ...
摘要:輕量級集合迭代器泊學視頻鏈接泊閱文檔鏈接是加入的新語言特性。接下來,我們可以像訪問一個普通集合一樣使用現在重新執行我們的文件,就不會再報錯了。簡單來說,就是一個輕量級的,可以記住自身狀態的集合迭代器。 輕量級集合迭代器-Generator泊學視頻鏈接泊閱文檔鏈接Generator是PHP 5.5加入的新語言特性。但是,它似乎并沒有被很多PHP開發者廣泛采用。因此,在我們了解PHP 7對...
摘要:性能提升當然需要付出代價如果預加載文件的來源發生變化,則必須重新啟動服務器。應該指出,這是一個復雜的主題。默認情況下不啟用由于不再維護,核心團隊決定使用刪除其默認安裝。將在錯誤情況下拋出異常。請注意,強制轉換不受影響。 新特性 預加載預加載是PHP核心的一個驚人的補充,可以帶來一些重大的性能改進。簡而言之:如果您今天使用的是框架,則必須在每次請求時加載和重新編譯其文件。 預加載允許服務...
摘要:鑒于上一篇上傳圖片到數據庫并可以進行顯示鏈接描述有筆友提出了改進意見,下面這篇文章就是采納改進意見進行修改的另外一種方案。結語本人剛接觸不久,自知能力不夠水平有限,該文中若存在什么不足或需改進之處還請大家多多指正。 鑒于上一篇《PHP上傳圖片到數據庫并可以進行顯示》鏈接描述有筆友提出了改進意見,下面這篇文章就是采納改進意見進行修改的另外一種方案。 1、創建數據表 CREATE TABL...
閱讀 3493·2021-11-23 10:13
閱讀 863·2021-09-22 16:01
閱讀 909·2021-09-09 09:33
閱讀 630·2021-08-05 09:58
閱讀 1717·2019-08-30 11:14
閱讀 1935·2019-08-30 11:02
閱讀 3265·2019-08-29 16:28
閱讀 1478·2019-08-29 16:09