form_file_select()
function form_file_select(string $name, array $attributes = []): string
Description
Generates an HTML file input element. Requires forms to use form_open_upload() for proper file upload handling.
Parameters
| Parameter | Type | Description |
|---|---|---|
| $name | string | The name attribute for the file input. |
| $attributes | array | (optional) HTML attributes for the file input. Defaults to an empty array ([]). |
Return Value
| Type | Description |
|---|---|
| string | An HTML file input element. |
Example #1: Basic File Input
PHP
echo form_file_select('document');
// Output:
// <input type="file" name="document">Example #2: File Input with Restrictions
PHP
$attributes = [
'accept' => '.jpg,.png,.gif',
'multiple' => true
];
echo form_file_select('images[]', $attributes);
// Output:
// <input type="file" name="images[]" accept=".jpg,.png,.gif" multiple>Complete Upload Example
PHP
// Must use form_open_upload() for file uploads
echo form_open_upload('documents/upload');
echo form_label('Select File:');
echo form_file_select('user_file', [
'accept' => '.pdf,.doc,.docx'
]);
echo form_submit('submit', 'Upload');
echo form_close();Notes
- Always use
form_open_upload()instead ofform_open()for forms containing file inputs. - Use
multipleattribute to allow multiple file selections. - Use
acceptattribute to restrict file types (e.g.,'.jpg,.png'or'image/*'). - For multiple files, append
[]to the field name:'images[]'. - Access uploaded files via
$_FILES['field_name']in your controller. - Configure PHP's
upload_max_filesizeandpost_max_sizefor larger files.