2012-07-23 62 views
0

我寫過一個drupal模塊。模塊中的一個函數是一個鉤子函數,它具有函數名稱形式:hook_form_FORM_ID_alter,其中部分FORM_ID取決於我想要更改的表單的ID。我想要更改形式的表單ID存儲在數據庫中作爲持久變量,我想要的是能夠使用這些來聲明時聲明函數的名稱。動態函數定義(?)

我的表單id數組可能隨時發生變化,hook_form_FORM_ID_alter對每個表單應該是相同的,所以我只希望函數定義中的函數名稱根據表單id數組的內容而改變。我嘗試了一些類似動態函數定義的搜索功能,但這似乎並不是我以前的樣子。

我知道我可以很容易地使用hook_form_alter,然後每次只檢查一次id,但是如果可能的話,我寧願這樣做。

+0

由於緩存,你不能手動添加表單alter函數。定義一個form_alter()和一個if語句就是它的正常工作方式。 – 2012-07-23 10:31:41

+0

好的。我想我會這樣做。 – numfar 2012-07-24 13:31:41

回答