假設我有以下文件通話功能包含此文件後
<?php
include 'file_A';
include 'file_B';
?>
的函數定義file_B
foo()
,有沒有辦法通過任何方式使用它在file_A
???
實際上,我在模塊中定義一系列不同功能的應用程序中工作,我希望跨模塊使用這些功能,而不必在文件定義包含在文件之前或之後的地方。
假設我有以下文件通話功能包含此文件後
<?php
include 'file_A';
include 'file_B';
?>
的函數定義file_B
foo()
,有沒有辦法通過任何方式使用它在file_A
???
實際上,我在模塊中定義一系列不同功能的應用程序中工作,我希望跨模塊使用這些功能,而不必在文件定義包含在文件之前或之後的地方。
由於PHP是一種解釋型語言,因此您無法這樣做。
我會做的解決方案是提取您需要分享到CommonMethods
類或類似的方法。如果可能,請將它們設爲靜態
然後在file_A
和file_B
之前包含CommonMethods文件。
在繼續您的項目之前,我會花一點時間研究PHP的設計模式。意大利麪代碼是從來沒有一件好事。
意大利麪條代碼?你有說意大利麪代碼嗎?我喜歡意大利麪。我喜歡餛飩。你可以用餛飩編程嗎?湯糰?我喜歡意大利美食。 – 2011-04-18 03:55:11
用於提及意大利麪代碼的+1 ......我很長時間沒有聽說過這個術語 – Wh1T3h4Ck5 2011-04-18 04:00:08
這是我提到PHP時首先想到的東西。不一定是由於語言本身,而是由我處理的程序員使用它。我見過很多意大利麪代碼的例子。不只是普通的意大利麪,我們正在談天使的頭髮。 – 2011-04-18 04:23:19
我會說不,但是跟着你的問題,也許我不希望。 – 2011-04-18 03:38:01
蜘蛛代碼,蜘蛛代碼,可以做任何事情,一些蜘蛛代碼。它可以調用一個隨機函數,不可以,因爲它被解釋了。 ...嘗試讓你的模塊有一些結構。當你生成一個呼叫圖,它看起來像一個可怕的蜘蛛網,你做錯了什麼。 – Borealid 2011-04-18 03:42:06
@Borealid - 是的,但我們都在那裏,失去了代碼運行的控制權,然而*負責*。 – 2011-04-18 03:44:19