فايل bootstrap.inc شامل دستوراتي است که در تمام درخواست‌هاي سرويس فراخواني مي‌شود. يعني هر بار و به هر شيوه سايت دروپالي توسط کاربران خوانده شود اين فايل اجرا شده و دستوراتش در حافظه مستقر مي‌شود.

چه فايلي باعث اجراي اين فايل مي‌شود؟

اولين دستور در فايل index.php (فايل اصلي سايت) باعث فراخواني فايل bootstrap.inc مي‌شود. بنابراين به محض اجراي سايت دروپال تمامي دستورات اين فايل به حافظه سرور ارسال مي‌شود. خط زير در فايل index.php باعث فراخواني آن فايل مي‌شود.

require_once './includes/bootstrap.inc';

عملکرد اين فايل:

اين فايل يک سري متغير به صورت عبارت معادل را با دستور define‌ تعريف مي‌کند. اين متغيرها که تعداد آنها به 30 مورد و بيشتر مي‌رسد مربوط مي‌شود به کش، لاگ‌هاي سيستم، زبان و ديگر تنظيمات. ليست اين متغيرها در زير مي‌آيد که البته آوردن آنها به جهت يافتن در نتايج جستجو و نيز براي طراحان سايت حرفه‌اي مي‌باشد. متغيرهايي که در طي تأليف اين کتاب در دستورات استفاده مي‌شود به صفحه يکي از آن دستورها لينک مي‌شود تا نحوه استفاده از آن روشن شود:

شماره خط: در دروپال 6.31

دستور

12

define('CACHE_PERMANENT', 0);

17

define('CACHE_TEMPORARY', -1);

22

define('CACHE_DISABLED', 0);

27

define('CACHE_NORMAL', 1);

34

define('CACHE_AGGRESSIVE', 2);

45

define('WATCHDOG_EMERG', 0);

56

define('WATCHDOG_ALERT', 1);

67

define('WATCHDOG_CRITICAL', 2);

78

define('WATCHDOG_ERROR', 3);

89

define('WATCHDOG_WARNING', 4);

100

define('WATCHDOG_NOTICE', 5);

111

define('WATCHDOG_INFO', 6);

122

define('WATCHDOG_DEBUG', 7);

127

define('DRUPAL_BOOTSTRAP_CONFIGURATION', 0);

133

define('DRUPAL_BOOTSTRAP_EARLY_PAGE_CACHE', 1);

138

define('DRUPAL_BOOTSTRAP_DATABASE', 2);

143

define('DRUPAL_BOOTSTRAP_ACCESS', 3);

148

define('DRUPAL_BOOTSTRAP_SESSION', 4);

154

define('DRUPAL_BOOTSTRAP_LATE_PAGE_CACHE', 5);

159

define('DRUPAL_BOOTSTRAP_LANGUAGE', 6);

164

define('DRUPAL_BOOTSTRAP_PATH', 7);

170

define('DRUPAL_BOOTSTRAP_FULL', 8);

175

define('DRUPAL_ANONYMOUS_RID', 1);

180

define('DRUPAL_AUTHENTICATED_RID', 2);

185

define('LANGUAGE_NEGOTIATION_NONE', 0);

191

define('LANGUAGE_NEGOTIATION_PATH_DEFAULT', 1);

198

define('LANGUAGE_NEGOTIATION_PATH', 2);

204

define('LANGUAGE_NEGOTIATION_DOMAIN', 3);

209

define('LANGUAGE_LTR', 0);

214

define('LANGUAGE_RTL', 1);

 

دستورات و توابع موجود در اين فايل:

چنانچه گفته شد فايل bootstrap.inc اولين فايلي است که در اجراي دروپال فراخواني مي‌شود. بنابراين توابع و دستورات تعريف شده در آن در تمام ماژول‌ها و صفحات قابل اجرا هستند. اين توابع در ماژول نويسي خيلي کاربرد دارند و دانستن عملکرد آنها به درد طراحان سايت دروپالي خواهد خورد.

در جدول زير توابع موجود در اين فايل به همراه شماره خط ذکر شده است. همچنين تعداد استفاده از آن در دروپال 6.31 (هسته و ماژول‌هاي پيش فرض) ذکر شده است. ماژول‌هايي که توضيح آنها در سايت ذکر شده به صورت لينک درج شده‌اند.

شماره خط: در دروپال 6.31 دستور(تابع) عملکرد تعداد استفاده

229

timer_start

   

245

timer_read

   

270

timer_stop

   

319

conf_path

   

345

drupal_unset_globals

   

366

drupal_valid_http_host

   

374

conf_init

   

504

drupal_get_filename

   

551

variable_init

   

587

variable_get

   

608

variable_set

   

634

variable_del

   

654

page_get_cache

   

681

bootstrap_invoke_all

   

700

drupal_load

   

728

drupal_page_header

   

744

drupal_page_cache_header

   

799

bootstrap_hooks

   

811

drupal_unpack

   

825

referer_uri

   

845

check_plain

انکود کردن کاراکترهاي ويژه يک عبارت جهت نمايش در قالب html + 130 مورد

894

drupal_validate_utf8

   

906

request_uri

   

950

watchdog

ثبت رويداد در ديتابيس +77 مورد

991

drupal_set_message

نمايش يک پيام به کاربر +230 مورد

1023

drupal_get_messages

فراخواني پيام‌هاي جلسه کاربر 1 مورد

1061

drupal_is_denied

   

1076

drupal_anonymous_user

   

1107

drupal_bootstrap

   

1117

_drupal_bootstrap

   

1219

drupal_maintenance_theme

   

1228

get_t

   

1239

drupal_init_language

   

1259

language_list

   

1304

language_default

   

1317

ip_address

   

1347

drupal_random_key

   

1359

drupal_base64_encode

   

1376

drupal_random_bytes

   

 

شما 2 امتیاز داده اید. تعداد امتیازدهندگان: 3294
مسیر کوتاه: rangine.ir/node/1073