$field = array( 'field_name' => $values['field_name'], 'type' => $values['type'], 'translatable' => $values['translatable'], );
field_name本身命名 ,type本身選擇drupal核心事先定義好的類型包括php
首選根據$field建立field用field_create_field($field)建立字段。檢測field_name是否爲空,是否包含不容許字符,是否長於32個字,而後使用field_read_field($field['field_name'],array('include_inactive' => true));保證字段名不存在(查詢條件爲字段激活且字段未被刪除的是否有此字段名若是有表示字段已存在)若是肯定字段名惟一,若是存在字段則讀取字段詳細信息(包括hook_field_schema字段模式,以及hook_read_field)此方法應該是考慮通用性我以爲這個方法效率過低了應該把判斷字段是否存在單獨寫個方法,不過考慮到添加字段都是在設計網站的時候去判斷這個方法執行頻率應該極低。網站