Sử dụng helper language trên CodeIgniter

Việc tùy chỉnh ngôn ngữ trên web là một yếu tố luôn luôn cần thiết. Và không ngoại lệ CodeIgniter đã đưa ra cho chúng ta một bộ helper language rất tiện dụng. Do đó trong bài này mình sẽ trình bày cách sử dụng bộ language trên CodeIgniter.

Các công cụ cần thiết.

- Bản CodeIgniter theo mô hình HMVC, cụ thể trong bài Hướng dẫn cài đặt mô hình HMVC trên CodeIgniter

- Notepad++ phiên bản mới nhất http://filehippo.com/download_notepad

Chúng ta sẽ tìm hiểu cách sử dụng bộ language này bằng ví dụ cụ thể.

1. Cách tạo một bộ thư viện language trên CodeIgniter.

Đầu tiên chúng ta vào thư mục language theo đường dẫn C:\AppServ\www\ci-test\application\language.

Sau đó chúng ta tạo một thư mục là vietnamese, dùng để lưu bộ thư viện ngôn ngữ chúng ta sẽ sử dụng.

Tiếp theo ta lại tạo tiếp một file tên là vi_lang.php để định nghĩa bộ thư viện Tiếng Việt. Các bạn chú ý là phải có hậu tố lang đằng sau tên file để CodeIgniter hiểu được.

Ta sẽ thấy được cấu trúc thư mục như sau.

Sử dụng helper language trên CodeIgniter

2. Định nghĩa bộ thư viện language trên CodeIgniter.

Chúng ta mở file vi_lang.php mà chúng ta vừa tạo ở trên bằng Notepad++ và copy đoạn code như sau vào.

<?php
   #Định language trên CodeIgniter
   $lang['fullname'] 	= "Họ và tên";
   $lang['email'] 		= "Địa chỉ hòm thư";
   $lang['address'] 	= "Địa chỉ nhà riêng";
   $lang['mobile'] 		= "Số di động";

Giải thích cho đoạn code ở trên. Ta thấy việc định nghĩa bộ thư viện language trên CodeIgniter cực kỳ là đơn giản.

Ta chỉ cần khai báo với cú pháp $lang['tên_tham_chiếu']    = 'Thông điệp cần hiển thị cho ngôn ngữ đó'.

Như vậy là ta đã tạo được một bộ thư viện language riêng của mình.

3. Load bộ thư viện language lên hệ thống.

Ta vào một Controller bất ký nào đó.

Trong thân của hàm __construct() ta gõ đoạn code sau vào.

# Tải bộ thư viện ngôn ngữ tiếng việt.
$this->lang->load('vi', 'vietnamese');

Đây đoạn code giúp CodeIgniter hiểu được rằng là sẽ cần tải bộ thư viện có tên là vi trong thư mục vietnamese mà ta vừa tạo lên trên hệ thống.

4. Cách sử dụng bộ helper language.

Sau khi ta đã tải được bộ ngôn ngữ lên. Ta sẽ tạo một file view tương ứng với method trong controller ta vừa tải bộ language ở trên. Copy đoạn code sau đây vào file này.

<?php 
echo $this->lang->line('fullname')." : Robert Downey 

Ở trên là 2 cách gọi đến một thành phần của bộ ngôn ngữ.

  • Cách thứ 1 : Ta gọi trực tiếp một phần tử của bộ thư viện theo cú pháp $this->lang->line('tên_tham_chiếu')
  • Cách thứ 2 : Gọi bằng hàm lang($att1, $att2). Trong đó $att1 là tên_tham_chiếu (bắt buộc phải có ), $att2 sẽ là id của thành phần label được tạo ra khi gọi hàm lang() này.

Sử dụng helper language trên CodeIgniter

Để tham khảo một ví dụ chi tiết hơn. Các bạn có thể xem trong bài Hướng dẫn validate form trên CodeIgniter

Chúc các bạn thành công :)

Tags: