2017 © Pedro Peláez
 

library u-convert

Chuyển đổi qua lại giữa các bảng mã Unicode, VNI, TCVN3... của Việt Nam

image

anhskohbo/u-convert

Chuyển đổi qua lại giữa các bảng mã Unicode, VNI, TCVN3... của Việt Nam

  • Tuesday, April 8, 2014
  • by anhskohbo
  • Repository
  • 2 Watchers
  • 11 Stars
  • 142 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 4 Forks
  • 2 Open issues
  • 1 Versions
  • 3 % Grown

The README.md

UConvert

Giới thiệu

UConvert hiện tại cho phép bạn chuyển đổi qua lại giữa các bảng mã của tiếng Việt. Hiện tại hỗ trợ 4 bảng mã:, (*1)

  • UNICODE
  • VNI
  • TCVN3
  • VIQR

Sẽ sớm hỗ trợ các bảng mã còn lại trong tương lai., (*2)

Dữ liệu được dùng để chuyển đổi trong UConvert được lấy từ địa chỉ: http://vietunicode.sourceforge.net/charset, (*3)

Cài đặt

UConvert có sẵn trên GithubPackagist, vậy nên bạn có thể cài đặt nó qua 2 cách cơ bản:, (*4)

Qua Composer

Nếu bạn sử dụng Composer để quản lý thư viện cho dự án của mình, một cách dễ dàng nhất, thêm "anhskohbo/u-convert": "dev-master" vào phần require trong file composer.json:, (*5)

"require": {
    "anhskohbo/u-convert": "dev-master"
}

Tiếp theo, update lại các gói:, (*6)

composer update

Thủ công

Nếu bạn chưa quen với Composer vì lý do gì, UConvert cho bạn một cách thủ công để nhúng nó vào dự án của bạn., (*7)

Đầu tiên, tải UConvert tại đây:, (*8)

Giải nén tập tin và bạn nên để tên thư mục chứa mã nguồn là u-convert. Ném nó vào thư mục chứa thư viện bên thứ 3 của bạn hoặc bất cứ nơi đâu bạn thích :), (*9)

Nhúng nó vào nơi bạn cần sử dụng:, (*10)

<?php

require '/path-to-libs/u-convert/autoload.php';

//..

Sử dụng

Quy chuẩn về tên bảng mã

Trước khi vào phần sử dụng bạn cần biết tên chuẩn của các bảng mã mà UConvert sử dụng., (*11)

Tất cả các tên bảng mã đều phải viết HOA và liền không dấu. Ví dụ UNICODE, VNI, TCVN3, VIQR..., (*12)

Trong lớp Anhskohbo\UConvert\UConvert một số hằng được khai báo giúp bạn nhất quán trong việc gọi tên bảng mã:, (*13)

<?php

namespace Anhskohbo\UConvert;

class UConvert implements UConvertInterface {

    const UNICODE = 'UNICODE';
    const TCVN3   = 'TCVN3';
    const VNI     = 'VNI';
    const VIQR    = 'VIQR';

Khởi tạo thông thường

UConvert cung cấp một cách rất dễ dàng để sử dụng, hãy xem một ví dụ:, (*14)

<?php
// Autoload library...

use Anhskohbo\UConvert\UConvert;

$vni_string = "Xin chaøo theá giôùi";

// Khoi tao UConvert voi string va bang ma cua no.
$convert    = new UConvert($vni_string, UConvert::VNI);

// Chuyen doi sang UNICODE
echo $convert->transform(UConvert::UNICODE);

// Output: Xin chào thế giới

Construct của UConvert chấp nhận 2 đối số:, (*15)

Anhskohbo\UConvert\UConvert( string $text, string $character), (*16)

$text: Nội dung bạn muốn chuyển đổi., (*17)

$character: Tên bảng mã hiện tại của nó., (*18)

Sau khi khởi tạo bạn cần gọi method transform(string $toCharacter) với tham số là tên bảng mã cần chuyển đến để chuyển nó sang bảng mã cuối., (*19)

Gọi trực tiếp qua static.

Ngoài ra thay vì phải khởi tạo lớp, UConvert cho phéo bạn gọi trực tiếp tới một số static-method đặc biệt chuyển đổi., (*20)

Những static-method đặc biệt là: to + tên bảng mã sẵn có (trong hệ thống) viết liền và viết hoa chữ cái đầu., (*21)

Dưới đây là một ví dụ gọi trực tiếp kiểu static:, (*22)

<?php

use Anhskohbo\UConvert\UConvert;

UConvert::toUnicode($vni, UConvert::VIQR);

UConvert::toVni($unicde, UConvert::UNICODE);

UConvert::toTcvn3($vni, UConvert::VNI);

Convert::toViqr($tcvn3, UConvert::TCVN3);

Hạn chế

  • Chưa hỗ trợ đầy đủ các bảng mã (sẽ dần có sớm).
  • Thiếu cơ chế tự động nhận diện bảng mã của chuỗi nhập vào (đang xem xét tuy nhiên gặp khó khăn vài regex kém @@)
  • Đọc, chuyển đổi và ghi từ text-file, hay word, excel...
  • ...

Đóng góp

Nếu bạn có bất kỳ chỉnh sửa, thêm mới... bạn có thể: Gửi pull-request tại: https://github.com/anhskohbo/u-convert/pulls, (*23)

The Versions

08/04 2014

dev-master

9999999-dev

Chuyển đổi qua lại giữa các bảng mã Unicode, VNI, TCVN3... của Việt Nam

  Sources   Download

MIT

The Requires

  • php >=5.3.0

 

The Development Requires

by Nguyen Van Anh

convert unicode vni tcvn3 vietnam