看板 PHP 關於我們 聯絡資訊
剛好手邊有點時間來回一下好了 我是不知道你為什麼好像覺得我在針對你啦 @@ 我會推這句是因為你的思路滿清晰的 清晰到只差最後一步答案就自己跑出來了 你先提出了一個假設: PHP processor 會跟 compiler 一樣做 peephole optimization 然後你想知道 ternary operator 有沒有 not 的 performance 是否也會一樣 這個基本上就是跑個 benchmark 就會知道結果的事情 先姑且不論 $value = $bool ? true : false 為什麼不直接寫成 $value = $bool 好了 你 code 都寫在文章裡已經寫好了 前後包個迴圈測一下執行速度就知道答案啦 你的實驗也的確做的很好,除了 ternary 的部份外,也做了 if-else 的比較 從你的實驗結果可以知道 PHP processor 並沒有跟你假設的一樣做 peephole 優化 由此我們可以推測再加更多 not 上去應該速度會越來越慢 我不知道是否我的推文文字讓你誤會? 但我覺得你的問題還滿 self-explanatory 的 我想指出你只需要最後一步實驗就能得到結果就夠了 應該沒有義務一定要幫你跑 benchmark 吧 @@ 希望以上的解釋對你有幫助囉 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 221.169.252.14
johnny1972:推很有耐心的特別回一篇解釋 07/29 20:12
tails32100:謝謝你的解釋,這也是小弟比較想知道的解答 07/29 22:42
tails32100:不是要幫忙跑benchmark的意思,而是希望有個理論上的說 07/29 22:43
tails32100:明,再次謝謝您的用心與耐心 :) 07/29 22:44
jikotw74:好清晰的邏輯 07/30 15:35