2012-05-15 124 views
3

使用「框」函數(如array_map),而不是編寫自己的循環(當您知道「框」函數不能寫入時在比自己的函數任何其他方式?PHP - 使用內置函數編寫自己的函數VS

(什麼?有時它更可讀時callback功能是一個自定義)

+0

這是一個問題嗎?一個觀點?什麼? – 2012-05-15 22:16:19

+0

我認爲這一切都取決於你在做什麼。 –

+0

@火箭,而不是你沒做什麼? – 2012-05-15 22:18:21

回答

6

與PHP中的相同實現相比,內置函數總是更快。內置函數將在C中執行,而PHP函數將被解釋爲C - 然後執行。

+0

PHP代碼在執行前總是被解釋爲C?如果是這樣,我可以假設內置函數已經編譯好了嗎? – yossi

+0

@yossi yep - [查看'array_map()']的源代碼(https://github.com/php/php-src/blob/master/ext/standard/array.c#L4236) –

2

有時它是所有關於表演,因爲這些功能可能會在C語言編碼,低級別,比較php ...

雖然這並不是系統性的,但是

+0

您能否詳細說明異常? – yossi

+1

這是一項安全評估。我純粹忽略了哪一個可能不是C語言構建的,但由於我不知道這些都是什麼,所以我更願意提及一個可能的例外。然而,我們仍然有可能遇到這樣的情況,它並不影響我們應該堅持我們所需要的現有內置版本的主要思想。 – Sebas