-
Notifications
You must be signed in to change notification settings - Fork 232
/
configuration.html
805 lines (776 loc) · 26.7 KB
/
configuration.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="./../assets/css/combined.css?20170912">
<link rel="shortcut icon" href="./../favicon.ico" />
<script src="https://www.google.com/jsapi" type="text/javascript"></script>
<script type="text/javascript">
var path = './../';
</script>
<script src="./../assets/js/combined.js?20170912"></script>
<title>Configuration - General - FuelPHP Documentation</title>
</head>
<body>
<div id="container">
<header id="header">
<div class="table">
<div id="cse">
<gcse:searchbox-only newWindow="true"></gcse:searchbox-only>
</div>
<h1>
<a href="https://fuelphp.com"><img height="37px" width="147px" src="./../assets/img/fuel.png" /></a>
<strong>Documentation</strong>
</h1>
</div>
<nav>
<div class="clear"></div>
</nav>
<a href="#" id="toc_handle">table of contents</a>
<div class="clear"></div>
</header>
<div id="main">
<h2>Configuring your application</h2>
<h3 id="intro">Introduction</h3>
<p>
The FuelPHP framework is built with configuration over convention in mind. This results in a highly customizable
base on which you can start building your application.
</p>
<p>
Configuration files are stored inside the <kbd>app/config</kbd> folder. The application's basic
configuration is done in <em>app/config/config.php</em>. The loaded configuration can be made
environment specific, more on this under <a href="environments.html#/env_config">Environments</a>.
</p>
<p class="note">
To overwrite settings from feature specific configs, either create a new file in app/config or copy
the corresponding file from core/config to app/config.
</p>
<h3 id="config">Configuration options</h3>
<p>
These are the options that can be defined in the applications basic configuration file, <kbd>app/config/config.php</kbd>.
When you have just installed FuelPHP, this file is empty. All default values, as defined below, are defined in the
corresponding file in the <kbd>core/config</kbd> folder. When you want to override a default, add the key to the array
in your app config file, and modify the value. Alternatively, copy the section from the core file to the app file, and
modify it.
</p>
<p class="note">
FuelPHP uses "<em>dot-notation</em>" when handling arrays. It is a convenient way of accessing elements of a multi-dimensional
array. This notation is used in the documenation as well, as it provides an easy to type array reference. For example:
</p>
<pre class="php"><code>// when you see "always_load.packages = array()", it is shorthand for:
array("always_load" => array("packages" => array(...) ) );
</code></pre>
<table class="config">
<tbody>
<tr class="header">
<th style="width:500px;">Key</th>
<th>Type</th>
<th>Default</th>
<th>Description</th>
</tr>
<tr>
<th>base_url</th>
<td>string</td>
<td><pre class="php"><code>null</code></pre></td>
<td>
The base URL of the application. Can be relative. MUST contain a trailing slash. ('/foo/', 'http://example.com/')
</td>
</tr>
<tr>
<th>url_suffix</th>
<td>string</td>
<td><pre class="php"><code>''</code></pre></td>
<td>
Any suffix that needs to be added to URL's generated by Fuel. If the suffix is an extension,
make sure to include the dot. ('.html')
</td>
</tr>
<tr>
<th>index_file</th>
<td>string</td>
<td><pre class="php"><code>'index.php'</code></pre></td>
<td>
The name of the main bootstrap file. Set this to false or remove if you using mod_rewrite.
</td>
</tr>
<tr>
<th>profiling</th>
<td>bool</td>
<td><pre class="php"><code>false</code></pre></td>
<td>
Whether to enable the profiler.
</td>
</tr>
<tr>
<th>profiling_paths</th>
<td>mixed</td>
<td><pre class="php"><code>array(
'APPPATH' => APPPATH,
'COREPATH' => COREPATH,
'PKGPATH' => PKGPATH,
),</code></pre></td>
<td>
Array of path-to-string translations, to hide the absolute path, and to shorten
the path being displayed (for layout purposes).
</td>
</tr>
<tr>
<th>cache_dir</th>
<td>string</td>
<td><pre class="php"><code>APPPATH.'cache/'</code></pre></td>
<td>
The directory to store cache files in. This directory must be writable.
</td>
</tr>
<tr>
<th>caching</th>
<td>bool</td>
<td><pre class="php"><code>false</code></pre></td>
<td>
Whether to enable file finder caching.
</td>
</tr>
<tr>
<th>cache_lifetime</th>
<td>int</td>
<td><pre class="php"><code>3600</code></pre></td>
<td>
The file finder cache lifetime in seconds.
</td>
</tr>
<tr>
<th>ob_callback</th>
<td>callback</td>
<td><pre class="php"><code>null</code></pre></td>
<td>
Callback given to ob_start(), set to ob_gzhandler to enable gzip encoding of output.
</td>
</tr>
<tr>
<td colspan="4"></td>
</tr>
<tr>
<th>errors</th>
<td colspan="3">
<strong>Array, containing the configuration keys to control behaviour when detecting errors:</strong>
</td>
</tr>
<tr>
<th style="padding-left:20px;">.continue_on</th>
<td>array</td>
<td><pre class="php"><code>array(
)</code></pre></td>
<td>
On which php errors to proceed execution. See <a href="./error.html">Error handling</a>.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.throttle</th>
<td>int</td>
<td><pre class="php"><code>10</code></pre></td>
<td>
How many errors to show before we stop showing them. (prevents out-of-memory errors)
</td>
</tr>
<tr>
<th style="padding-left:20px;">.notices</th>
<td>bool</td>
<td><pre class="php"><code>true</code></pre></td>
<td>
If true, PHP notices are shown inline. If false, an E_USER_NOTICE exception is thrown.
</td>
</tr>
<tr>
<td colspan="4"> </td>
</tr>
<tr>
<th>language</th>
<td>string</td>
<td><pre class="php"><code>'en'</code></pre></td>
<td>
The default application language, used by the <a href="../classes/lang.html">Lang class</a>.
</td>
</tr>
<tr>
<th>language_fallback</th>
<td>string</td>
<td><pre class="php"><code>'en'</code></pre></td>
<td>
This language code will be used when the requested language file doesn't exist in the active language.
This should be your main application language.
</td>
</tr>
<tr>
<th>locale</th>
<td>string | array</td>
<td><pre class="php"><code>'en_US'</code></pre></td>
<td>
Used for set the locale for your application, if it differs from the default server or
PHP configuation locale. See <em>setlocale()</em> for more information.<br />
<em>The syntax setting for this can differ per OS, Ubuntu for example requires a
<kbd>.utf8</kbd> (the encoding) suffix.</em>. To pass multiple options, pass an indexed array
with the locales in order of preference.<br />
If you don't need to use a difffent locale, set to <kbd>false</kbd>.
</td>
</tr>
<th>locale_category</th>
<td>int | array</td>
<td><pre class="php"><code>LC_ALL</code></pre></td>
<td>
One or more categories for which the defined locale should be set, define either a single
category, like the LC_ALL constant, or an indexed array of LC constants.<br />
The array is needed because unlike other constants in PHP, these can't be or'd.
</td>
</tr>
<tr>
<th>encoding</th>
<td>string</td>
<td><pre class="php"><code>'UTF-8'</code></pre></td>
<td>
The application's default character encoding.
</td>
</tr>
<tr>
<th>server_gmt_offset</th>
<td>int</td>
<td><pre class="php"><code>0</code></pre></td>
<td>
The offset in seconds the server offset from gmt timestamp when time() is used.<br />
<em>This is only to correct bad server configuration: <kbd>time()</kbd> should always
return the number of seconds since January 1 1970 00:00:00 GMT.</em>
</td>
</tr>
<tr>
<th>default_timezone</th>
<td>string</td>
<td><pre class="php"><code>null</code></pre></td>
<td>
The server timezone. If set to null, the timezone configured in your php.ini file will be used.
</td>
</tr>
<tr>
<td colspan="4">
<p class="note">
If you set this value, make <strong>ABSOLUTELY</strong> sure that the timezone configured matches the timezone set on your server.
Since timezone calculations work by converting to GMT, it goes horribly wrong when you have a timezone mismatch. This will cause
time displays in your application to be incorrect, and cookie/session issues due to incorrect expiry time calculations!
</p>
</td>
</tr>
<tr>
<th>log_threshold</th>
<td>int</td>
<td><pre class="php"><code>Fuel::L_WARNING</code></pre></td>
<td>
The logging threshold. From what level of message to log, or an array of specific message levels that should be logged. <a href="../classes/fuel.html#log_constants">Read about the possible values</a>
</td>
</tr>
<tr>
<th>log_file</th>
<td>string</td>
<td><pre class="php"><code>null</code></pre></td>
<td>
The file the log needs to be written to. If not given, a filename will be generated.
</td>
</tr>
<tr>
<th>log_path</th>
<td>string</td>
<td><pre class="php"><code>APPPATH.'logs/'</code></pre></td>
<td>
The directory to store the logs in. This directory MUST be writable.
</td>
</tr>
<tr>
<th>log_date_format</th>
<td>string</td>
<td><pre class="php"><code>'Y-m-d H:i:s'</code></pre></td>
<td>
The date/time format used in the logs.
</td>
</tr>
<tr>
<th>cli_backtrace</th>
<td>bool</td>
<td><pre class="php"><code>false</code></pre></td>
<td>
If true, a backtrace will be printed when a PHP fatal error is encountered in CLI mode (similar to the html error pages).
</td>
</tr>
<tr>
<th>security</th>
<td colspan="3">
<strong>Array, containing the configuration keys to control your application security:</strong>
</td>
</tr>
<tr>
<th style="padding-left:20px;">.csrf_autoload</th>
<td>bool</td>
<td><pre class="php"><code>false</code></pre></td>
<td>
Whether to auto-check the csrf token. <a href="../general/security.html#csrf">Read more about csrf</a>.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.csrf_autoload_methods</th>
<td>array</td>
<td><pre class="php"><code>array(
'post', 'put', 'delete'
)</code></pre></td>
<td>
List of HTTP methods for which csrf token auto-checking will happen.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.csrf_bad_request_on_fail</th>
<td>bool</td>
<td><pre class="php"><code>false</code></pre></td>
<td>
If true, an HttpBadRequestException will be thrown. If false, a SecurityException will be thrown.
It is false by default for backward compatibility reasons.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.csrf_auto_token</th>
<td>bool</td>
<td><pre class="php"><code>false</code></pre></td>
<td>
If true, a hidden csrf token input field will be automatically added to each form created using Form::open().
</td>
</tr>
<tr>
<th style="padding-left:20px;">.csrf_token_key</th>
<td>string</td>
<td><pre class="php"><code>'fuel_csrf_token'</code></pre></td>
<td>
Which $_POST key to fetch when checking the csrf token.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.csrf_expiration</th>
<td>int</td>
<td><pre class="php"><code>0</code></pre></td>
<td>
Set the expiration time for the csrf cookie. Anything higher than 0 is the number of seconds in
which the cookie will expire.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.csrf_rotate</th>
<td>bool</td>
<td><pre class="php"><code>true</code></pre></td>
<td>
If true, the CSRF token is always rotated after token validation, no token will be reused. If false, tokens will
be reused until they expire, or until Security::set_token(true) is called to manually rotate it.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.token_salt</th>
<td>string</td>
<td><pre class="php"><code>'put your salt value here...'</code></pre></td>
<td>
A salt to make sure the generated security tokens are not predictable.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.allow_x_headers</th>
<td>bool</td>
<td><pre class="php"><code>false</code></pre></td>
<td>
Allow the Input class to use "X" headers when present, such as HTTP_X_FORWARDED_FOR or HTTP_X_FORWARDED_PROTO.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.uri_filter</th>
<td>array</td>
<td><pre class="php"><code>array('htmlentities')</code></pre></td>
<td>
What <a href="http://php.net/manual/en/language.types.callable.php">php callable</a>s to use to filter the URI.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.input_filter</th>
<td>array</td>
<td><pre class="php"><code>array()</code></pre></td>
<td>
What <a href="http://php.net/manual/en/language.types.callable.php">php callable</a>s to use to filter
the input arrays ($_GET, $_POST and $_COOKIE). Can be set to <em>xss_clean</em>,
but this may cause a performance hit based on the size of the input.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.output_filter</th>
<td>array</td>
<td><pre class="php"><code>array()</code></pre></td>
<td>
What <a href="http://php.net/manual/en/language.types.callable.php">php callable</a>s to use to filter
the variables set onto a view. Can be set to <em>xss_clean</em>,
but this may cause a performance hit based on the size of the variables.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.htmlentities_flags</th>
<td>integer</td>
<td><pre class="php"><code>ENT_QUOTES</code></pre></td>
<td>
Whether to automatically encode (htmlentities) view data.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.htmlentities_double_encode</th>
<td>bool</td>
<td><pre class="php"><code>false</code></pre></td>
<td>
Whether or not to encode HTML entities as well.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.auto_filter_output</th>
<td>bool</td>
<td><pre class="php"><code>true</code></pre></td>
<td>
Whether to automatically encode (htmlentities) view data.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.filter_closures</th>
<td>bool</td>
<td><pre class="php"><code>true</code></pre></td>
<td>
If true, closures passed onto Views will be executed, and their return value will be filtered
and passed on to the View. If false, the closure itself will be passed to the view.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.whitelisted_classes</th>
<td>array</td>
<td><pre class="php"><code>array(
'stdClass',
'Fuel\\Core\\View',
'Fuel\\Core\\Presenter',
'Closure'
)</code></pre></td>
<td>
With output encoding switched on all objects passed will be converted to strings or throw exceptions
unless they are instances of the classes in this array.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.form-double-urlencoded</th>
<td>bool</td>
<td><pre class="php"><code>false</code></pre></td>
<td>
Set this to true of your client sends data using the HTTP PUT, DELETE or PATCH methods
using the www-form-urlencoded content-type, and it's contents is urlencoded locally
before submitting.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.clean_paths</th>
<td>mixed</td>
<td><pre class="php"><code>array(
),</code></pre></td>
<td>
Array of path-to-string translations, to hide the absolute path, and to shorten
the path being displayed in any output. Note that for security reasons, APPPATH,
COREPATH, PKGPATH, and DOCROOT will always be translated.
</td>
</tr>
<tr>
<td colspan="4"> </td>
</tr>
<tr>
<th>cookie</th>
<td colspan="3">
<strong>Array, containing the configuration keys to define the global cookie settings:</strong>
</td>
</tr>
<tr>
<th style="padding-left:20px;">.expiration</th>
<td>int</td>
<td><pre class="php"><code>0</code></pre></td>
<td>
Number of seconds before the cookie expires.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.path</th>
<td>string</td>
<td><pre class="php"><code>'/'</code></pre></td>
<td>
Restrict the path that the cookie is available to.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.domain</th>
<td>string</td>
<td><pre class="php"><code>null</code></pre></td>
<td>
Restrict the domain that the cookie is available to.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.secure</th>
<td>bool</td>
<td><pre class="php"><code>false</code></pre></td>
<td>
Only transmit cookies over secure connections.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.http_only</th>
<td>bool</td>
<td><pre class="php"><code>false</code></pre></td>
<td>
Only transmit cookies over HTTP, disabling Javascript access.
</td>
</tr>
<tr>
<td colspan="4"> </td>
</tr>
<tr>
<th>validation</th>
<td colspan="3">
<strong>Array, containing the configuration keys to control validation behaviour :</strong>
</td>
</tr>
<tr>
<th style="padding-left:20px;">.global_input_fallback</th>
<td>bool</td>
<td><pre class="php"><code>true</code></pre></td>
<td>
Whether to fallback to global inout data when a value is not found in the input array
passed to validation.
</td>
</tr>
<tr>
<td colspan="4"> </td>
</tr>
<tr>
<th>controller_prefix</th>
<td>string</td>
<td><pre class="php"><code>'Controller_'</code></pre></td>
<td>
The class prefix used to find controllers when mapping the URI to the controller class name.
You have to change this if you want your controllers namespaced or in a different folder then
app/classes/controller.
</td>
</tr>
<tr>
<th>routing</th>
<td colspan="3">
<strong>Array, containing the configuration keys to control routing behaviour :</strong>
</td>
</tr>
<tr>
<th style="padding-left:20px;">.case_sensitive</th>
<td>bool</td>
<td><pre class="php"><code>true</code></pre></td>
<td>
Whether URI routing is case-sensitive or not. If true, "/THIS" and "/this" are different routes.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.strip_extension</th>
<td>mixed</td>
<td><pre class="php"><code>true</code></pre></td>
<td>
If false, nothing will be stripped. If true, all extensions will be stripped. If an array,
it should contain a list of extensions (including the leading DOT!) that needs to be stripped.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.module_routes</th>
<td>bool</td>
<td><pre class="php"><code>false</code></pre></td>
<td>
When true, the modules routes config file is loaded and added to the global routing table when
you load the module.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.recursive</th>
<td>bool</td>
<td><pre class="php"><code>false</code></pre></td>
<td>
If true, and the requested URI resolves to a defined route, but that route doesn't resolve
to a valid controller action, the resolved route will be processed again by the routing engine.
</td>
</tr>
<tr>
<td colspan="4"> </td>
</tr>
<tr>
<th>response</th>
<td colspan="3">
<strong>Array, containing the configuration keys to control response behaviour :</strong>
</td>
</tr>
<tr>
<th style="padding-left:20px;">.redirect_with_wildcards</th>
<td>bool</td>
<td><pre class="php"><code>true</code></pre></td>
<td>
If true, you can use the "*" as a segement wildcard when redirecting. These segments will then
be filled in from the original request URI. So a redirect on "admin/user/edit" to "*/*/view"
will redirect to "admin/user/view".
</td>
</tr>
<tr>
<td colspan="4"> </td>
</tr>
<tr>
<th>config</th>
<td colspan="3">
<strong>Array, containing the configuration keys to control the configuration environment :</strong>
</td>
</tr>
<tr>
<th style="padding-left:20px;">.database</th>
<td>string</td>
<td><pre class="php"><code>null</code></pre></td>
<td>
The database that stores your configuration data table, if you have opted to use the database as you
configuration data backend.
</td>
</tr>
<th style="padding-left:20px;">.table_name</th>
<td>string</td>
<td><pre class="php"><code>'config'</code></pre></td>
<td>
The table that stores your configuration data, if you have opted to use the database as you
configuration data backend.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.memcached</th>
<td>array</td>
<td><pre class="php"><code>array('identifier' => 'config',
'servers' => array(
array(
'host' => '127.0.0.1',
'port' => 11211,
'weight' => 100),
),
)</code></pre></td>
<td>
Memcached configuration, if you have opted to use a memcached store as you
configuration data backend.
</td>
</tr>
<tr>
<td colspan="4"> </td>
</tr>
<tr>
<th>lang</th>
<td colspan="3">
<strong>Array, containing the configuration keys to control the language environment :</strong>
</td>
</tr>
<tr>
<th style="padding-left:20px;">.database</th>
<td>string</td>
<td><pre class="php"><code>null</code></pre></td>
<td>
The database that stores your translation data table, if you have opted to use the database as you
translation data backend.
</td>
</tr>
<th style="padding-left:20px;">.table_name</th>
<td>string</td>
<td><pre class="php"><code>'config'</code></pre></td>
<td>
The table that stores your translation data, if you have opted to use the database as you
translation data backend.
</td>
</tr>
<tr>
<td colspan="4"> </td>
</tr>
<tr>
<th>module_paths</th>
<td>array</td>
<td><pre class="php"><code>array(APPPATH.'modules'.DS)</code></pre></td>
<td>
Paths to module directories. Used when adding a module without specifying the location.
</td>
</tr>
<tr>
<th>package_paths</th>
<td>array</td>
<td><pre class="php"><code>array(PKGPATH)</code></pre></td>
<td>
Paths to package directories. Used when adding a package without specifying the location.
</td>
</tr>
<tr>
<th>always_load</th>
<td colspan="3">
<strong>Array, containing the items the framework has to load when it initializes:</strong>
</td>
</tr>
<tr>
<th style="padding-left:20px;">.packages</th>
<td>array</td>
<td><pre class="php"><code>array()</code></pre></td>
<td>
Which packages to autoload. Specify like so: <strong>array('package')</strong> or <strong>array('package' => PKGPATH.'path/to/package')</strong>. In order for this to work a package path must be set in <em>package_paths</em>
</td>
</tr>
<tr>
<th style="padding-left:20px;">.modules</th>
<td>array</td>
<td><pre class="php"><code>array()</code></pre></td>
<td>
Which modules to autoload. Specify like so: <strong>array('package')</strong>. Autoloaded modules are accessible via
the URL. In order for this to work a module path must be set in <em>module_paths</em>
</td>
</tr>
<tr>
<th style="padding-left:20px;">.classes</th>
<td>array</td>
<td><pre class="php"><code>array()</code></pre></td>
<td>
Which classes to autoload and initiate. When you want to autoload a class from a package or module, make sure
that is autoloaded too!
</td>
</tr>
<tr>
<th style="padding-left:20px;">.config</th>
<td>array</td>
<td><pre class="php"><code>array()</code></pre></td>
<td>
Which config files to autoload. Load a config file into a group like so: <strong>array('config')</strong> or
<strong>array('filename' => 'group')</strong>. If you do not want to load the file into a set the group name to
<em>null</em>: <strong>array('filename' => null)</strong>.
</td>
</tr>
<tr>
<th style="padding-left:20px;">.language</th>
<td>array</td>
<td><pre class="php"><code>array()</code></pre></td>
<td>
Which language files to autoload. Load a config file into a group like so: <strong>array('lang')</strong> or
<strong>array('filename' => 'group')</strong>. If you do not want to load the file into a set the group name to
<em>null</em>: <strong>array('filename' => null)</strong>.
</td>
</tr>
<tr>
<td colspan="4"> </td>
</tr>
</tbody>
</table>
<p>
Interacting with config files/settings is done using the <a href="../classes/config.html">Config</a> class.
Config files can also be generated using <a href="../packages/oil/generate.html#configs">Oil</a>.
</p>
</div>
<footer>
<p>
© FuelPHP Development Team 2010-2025 - <a href="https://fuelphp.com">FuelPHP</a> is released under the MIT license.
</p>
</footer>
</div>
</body>
</html>