Helpers và Libraries – Các tiện ích hỗ trợ lập trình nhanh hơn
Trong quá trình phát triển ứng dụng, chúng ta thường xuyên phải thực hiện các tác vụ lặp đi lặp lại, chẳng hạn như xử lý chuỗi, định dạng ngày giờ, tạo URL hoặc kiểm tra dữ liệu đầu vào. CodeIgniter cung cấp Helpers và Libraries để giúp lập trình viên tiết kiệm thời gian và tối ưu mã nguồn.
Mục tiêu bài học:
- Hiểu khái niệm Helpers và Libraries trong CodeIgniter.
- Biết cách sử dụng các Helpers phổ biến như
url_helper
,form_helper
,text_helper
. - Học cách tạo và sử dụng Libraries tùy chỉnh.
- Thực hành xây dựng Helper xử lý chuỗi và định dạng dữ liệu.

Helpers và Libraries
1. Giới thiệu về Helpers và Libraries trong CodeIgniter
Helpers là gì?
Helpers trong CodeIgniter là các tập hợp hàm độc lập giúp thực hiện các tác vụ thường xuyên sử dụng. Helpers không phụ thuộc vào mô hình MVC và có thể được gọi ở bất cứ đâu trong ứng dụng.
Nơi lưu trữ Helpers:
- CodeIgniter 3:
application/helpers/
- CodeIgniter 4:
app/Helpers/
Libraries là gì?
Libraries trong CodeIgniter là các lớp PHP mạnh mẽ giúp mở rộng tính năng của framework, chẳng hạn như xử lý session, email, upload file, v.v.
Nơi lưu trữ Libraries:
- CodeIgniter 3:
application/libraries/
- CodeIgniter 4:
app/Libraries/
2. Sử dụng các Helpers phổ biến
url_helper – Hỗ trợ xử lý URL
Tải Helper url_helper
helper('url'); // CodeIgniter 4
$this->load->helper('url'); // CodeIgniter 3
Một số hàm hữu ích:
echo base_url('assets/images/logo.png'); // Trả về đường dẫn tuyệt đối
echo site_url('user/profile'); // Trả về đường dẫn của controller
form_helper – Hỗ trợ xử lý form
Tải Helper form_helper
helper('form'); // CodeIgniter 4
$this->load->helper('form'); // CodeIgniter 3
Tạo form nhanh chóng:
echo form_open('users/store');
echo form_input(['name' => 'username', 'placeholder' => 'Nhập tên']);
echo form_submit('submit', 'Lưu');
echo form_close();
text_helper – Hỗ trợ xử lý chuỗi
Tải Helper text_helper
helper('text'); // CodeIgniter 4
$this->load->helper('text'); // CodeIgniter 3
Cắt chuỗi và tạo slug:
echo word_limiter('Đây là một chuỗi rất dài và cần được rút gọn.', 5);
echo character_limiter('CodeIgniter là một PHP framework.', 20);
3. Tạo và sử dụng Libraries tùy chỉnh
Tạo một Library mới để xử lý ngày tháng
Tạo file app/Libraries/DateHelper.php
<?php
namespace App\Libraries;
class DateHelper
{
public function formatDate($date)
{
return date('d-m-Y', strtotime($date));
}
}
Sử dụng Library trong Controller
Gọi Library trong Controller
use App\Libraries\DateHelper;
$dateHelper = new DateHelper();
echo $dateHelper->formatDate('2024-06-01'); // Output: 01-06-2024
4. Thực hành: Xây dựng Helper xử lý chuỗi và định dạng dữ liệu
Bước 1: Tạo Helper mới
Tạo file app/Helpers/custom_helper.php
<?php
function to_slug($string)
{
$string = strtolower(trim($string));
$string = preg_replace('/[^a-z0-9-]/', '-', $string);
$string = preg_replace('/-+/', '-', $string);
return trim($string, '-');
}
function format_currency($number)
{
return number_format($number, 2) . ' VND';
}
Bước 2: Tải và sử dụng Helper
Nạp Helper trong Controller
helper('custom');
echo to_slug('Bài viết hay về CodeIgniter!'); // Output: bai-viet-hay-ve-codeigniter
echo format_currency(1000000); // Output: 1,000,000.00 VND
Kết luận
Tóm tắt nội dung chính:
- Helpers là tập hợp các hàm hỗ trợ đơn giản, giúp xử lý URL, form, chuỗi, v.v.
- Libraries là các lớp PHP mạnh mẽ giúp mở rộng tính năng của CodeIgniter.
- Có thể tạo Helpers và Libraries tùy chỉnh để phù hợp với yêu cầu của dự án.

Với hơn 10 năm kinh nghiệm lập trình web và từng làm việc với nhiều framework, ngôn ngữ như PHP, JavaScript, React, jQuery, CSS, HTML, CakePHP, Laravel..., tôi hy vọng những kiến thức được chia sẻ tại đây sẽ hữu ích và thiết thực cho các bạn.
Xem thêm

Chào, tôi là Vũ. Đây là blog hướng dẫn lập trình của tôi.
Liên hệ công việc qua email dưới đây.
lhvuctu@gmail.com