بازگردوندن کاراکترهای ISO-Western به فارسی
18 دى 1388 ساعت 01:06
پی اچ پی
بازگردوندن کاراکترهای ISO-Western به فارسی یا تبدیل "Ø§Ù…ÛŒØ±ØØ³ÛŒÙ†" به "امیرحسین"
امیرحسین (اینجانب) عضو تیم پشتیبانی فارسی مادایکس به آدرس http://MODxCMS.ir هستم. خیلی وقت پیش یه کرم اینترنتی پخش شد که به محتوای فایلها، کدهای تخریبی اضافه می کرد که دامن این سایت رو گرفت و ما هم اومدیم درستش کنیم زدیم جفت چشماش رو کور کردیم و محتوای کل دیتابیس بصورت Western اینکد (Encode) شد (مثلا به این شکل: "Ø§Ù…ÛŒØ±ØØ³ÛŒÙ†") و دیگه تاریخ پیوست.
تا اینکه چند وقت پیش یکی از اعضای فروم سایت زحمت کشیدند و فایلهای سایت از جمله بخش آموزش رو که قبلا ذخیره کرده بودند رو مرتب کردند، به من دادند تا توی سایت بذارم.
قصه کافیه، من یه تابع PHP نوشتم که این کاراکترها رو به فارسی برمیگردونه. این تابع، این کاراکترهای کج و کوله رو به عنوان پارامتر میگیره و فارسی روان تحویل میده.
از این که بگذریم، من در حین تست این تابع یه روش دیگه برای برگردوندن این کاراکترها پیدا کردم که راستش خیلی ساده تر از این تابع است.
کافیه یه Notepad باز کنیم و این کاراکترها رو توش کپی کنیم بعد از ذخیره، وقتی دوباره این فایل رو باز کنیم، چی میبینیم؟ فارسی!
نظرت چیه؟
پی نوشت: وقتی میخوای این تابع رو استفاده کنی، اون صفحه ای که میخوای توش خروجی فارسی رو چاپ کنی، باید Charset اش UTF-8 باشه. نه؟
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> </head> <body> <?php echo western_to_persian($str); ?> </body> </html>

Google Chrome
امیرحسینم. اسمم رو دوست دارم، خودم رو دوست دارم. تهران زندگی می کنم. دانشجوی رشته صنایع هستم شغل درست و حسابی ندارم. طراحی وب می کنم ولی همه اش واسه سرگرمی بوده. برنامه نویس PHP هستم. برنامه نویسی و وقت گذرونی با کامپیوتر تنها کاریه که خسته ام نمی کنه.
تو چی فکر می کنی؟