2009-09-20 25 views
5

Từ kinh nghiệm của bạn, tốt hơn là sử dụng 1 tệp ngôn ngữ hoặc nhiều tệp langauge nhỏ hơn cho mỗi ngôn ngữ trong một dự án PHP bằng cách sử dụng phần mở rộng gettext? Tôi thậm chí không chắc chắn nếu nó có thể sử dụng nhiều tập tin, nó là khó khăn cho tôi để kiểm tra kể từ khi máy chủ lưu trữ các tập tin ngôn ngữ.Tốt hơn để sử dụng nhiều tệp ngôn ngữ hoặc 1?

Tôi đang thực hiện nhiều ngôn ngữ trên trang web mạng xã hội, cho đến nay chỉ là trang đăng ký có khoảng 1 trong 200 trang để truy cập và nó có 35 chuỗi văn bản để dịch, với tốc độ này, tệp ngôn ngữ cho từng ngôn ngữ bị xóa thực sự lớn vì vậy tôi nghĩ có thể sẽ tốt hơn nếu làm các tệp ngôn ngữ khác nhau cho các trang khác nhau hoặc có thể là các phần như phần diễn đàn và blog nhưng nếu không có sự khác biệt thì tôi sẽ không lãng phí thời gian của mình để tạo nhiều tệp nhỏ hơn cho mỗi ngôn ngữ.

Tôi nhận ra mọi tình huống đều khác nhau và câu trả lời duy nhất là để kiểm tra nó, nhưng tôi hy vọng để tránh rằng thời gian này và chỉ nhận được một số oppinions của người có kinh nghiệm hơn, đây là lần đầu tiên tôi sử dụng gettext, nhờ

Trả lời

4

Tôi sẽ có mô-đun tệp ngôn ngữ dựa. Với gettext, bạn cần chỉ định ngôn ngữ cho từng ngôn ngữ. Nó sẽ phù hợp nhất để có tệp .po/.mo riêng biệt cho mỗi mô-đun hoặc các phần lớn trên trang web của bạn.

Đó là ý kiến ​​của tôi. :-)

2

Tôi thường tự động hóa quy trình và có nhiều ngôn ngữ trong nhiều tệp bằng cách sử dụng cơ sở dữ liệu để chỉnh sửa trang web (bằng cách sử dụng tra cứu db đơn giản). Điều này cho phép tôi thuê người dịch đến và xác minh bản dịch hiện tại dễ dàng. Triển khai để sản xuất sau đó chỉ đơn giản là chuyển cơ sở dữ liệu thành một tập hợp các tập tin ngôn ngữ.

0

Từ kinh nghiệm tôi sẽ phá vỡ các ngôn ngữ xuống trên cơ sở mỗi tệp khi chi phí quản lý trở nên nặng và có phạm vi tuyệt vời để sao chép và nhầm lẫn.

Ưu điểm khác bằng cách sử dụng cấu trúc thư mục và quy ước đặt tên ngôn ngữ chính xác có thể được chọn dễ dàng hơn so với tệp lớn và dễ dàng hơn để viết công cụ quản lý ở giai đoạn sau trong dự án.

Nó cũng đáng xem xét một số định dạng mà người khác sử dụng. Nhiều khung công tác sử dụng loại cấu trúc này, Dashcode, Symfony, Zend vv Và có một xliff định dạng xml được xây dựng để xử lý bản dịch và tích hợp với nhiều công cụ mà người dịch sử dụng.

0

Nhiều tệp là cách tốt nhất để đi nhưng mọi thứ có thể bị vô tổ chức.

Chúng tôi vừa phát hành một dịch vụ miễn phí mới có tên Chuỗi giải quyết hầu hết các vấn đề về quản lý nhiều tệp ngôn ngữ - như basecamp để bản địa hóa. Bạn có thể nhập các tệp hiện có hoặc bắt đầu từ đầu bằng các khóa và chuỗi trong hệ thống. Khi bạn đã sẵn sàng, bạn có thể xuất lại các tệp để chạy ứng dụng của mình. Nó hoạt động với các định dạng PHP (mảng), PHP (định nghĩa), po, yaml, ini và .strings.

Chuỗi cho phép bạn cộng tác với người dịch dễ dàng - bạn chỉ cần mời họ tham gia dự án và đặt quyền ngôn ngữ của họ. Người dịch có thể để lại nhận xét và câu hỏi trên mỗi chuỗi nếu họ cần thêm thông tin - và bạn có thể hoàn nguyên chuỗi lại bằng chức năng Lịch sử nếu mọi thứ không hoàn toàn đúng.

Dù sao đủ quảng cáo chiêu hàng! Hãy khám phá tại số http://mygengo.com/string - chúng tôi rất mong nhận được phản hồi của bạn.

Các vấn đề liên quan