/ PHP

[工作] 突然發現的微妙邏輯差異

在 PHP 裡面,一般要使用 include 或是 require 的時候,我習慣是放在程式的外面,這樣就是全域函式,大家都可以用。但是,卻遇到了一個問題,就是重複定義。如果有兩個以上的程式不小心都 require 了同一個檔案,那麼就有可能會被 PHP 吐出錯誤訊息說,你的類或是函式重覆定義了。

今天猛然發現,如果我在函式裡面做 require 呢?結果,重覆定義的問題不見了。彷彿就像是,你所 require 進來的東西,不管是變數、函式還是類,它的生命週期就是跟著該函式結束而結束。

天啊,我以前怎麼沒想到!

這樣就解決了許多問題了,OH MY GOD... 我真的是傻了吧。果真不是資訊科系出身的還是有差,我還太嫩啊!