برگزیده های پرشین تولز

تبدیل UTF-8 به ASCII

sh.n.n786

Registered User
تاریخ عضویت
28 سپتامبر 2011
نوشته‌ها
454
لایک‌ها
94
درود به تمام دوستان این مبدل رو من از روی نیاز نوشتم و خیلی عجله ای هست ... :blush:

حالا کسی میتونه انو یه جوره دگه بنویسه بدون این همه IF و... اینا ....;)

ممنون

PHP:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<h1 align="center" dir="rtl">UTF-8 به ASCII</h1>
<?php 
$OP['SC'] = $_POST['StartCode'];
$OP['FC'] = $_POST['FinalCode'];

$CP['FA-ASCII'] = array(
'&amp#1570;' <= 'آ',
'&amp#1575;' <= 'ا',
'&amp#1576;' => 'ب',
'&amp#1662;' => 'پ',
'&amp#1578;' => 'ت',
'&amp#1579;' => 'ث',
'&amp#1580;' => 'ج',
'&amp#1670;' => 'چ',
'&amp#1581;' => 'ح',
'&amp#1582;' => 'خ',
'&amp#1583;' => 'د',
'&amp#1584;' => 'ذ',
'&amp#1585;' => 'ر',
'&amp#1586;' => 'ز',
'&amp#1688;' => 'ژ',
'&amp#1587;' => 'س',
'&amp#1588;' => 'ش',
'&amp#1589;' => 'ص',
'&amp#1590;' => 'ض',
'&amp#1591;' => 'ط',
'&amp#1592;' => 'ظ',
'&amp#1593;' => 'ع',
'&amp#1594;' => 'غ',
'&amp#1601;' => 'ف',
'&amp#1602;' => 'ق',
'&amp#1705;' => 'ک',
'&amp#1711;' => 'گ',
'&amp#1604;' => 'ل',
'&amp#1605;' => 'م',
'&amp#1606;' => 'ن',
'&amp#1608;' => 'و',
'&amp#1607;' => 'ه',
'&amp#1740;' => 'ی',
'&amp#1574;' => 'ئ',
'&amp#1632;' => '0',
'&amp#1633;' => '1',
'&amp#1634;' => '2',
'&amp#1635;' => '3',
'&amp#1636;' => '4',
'&amp#1637;' => '5',
'&amp#1638;' => '6',
'&amp#1639;' => '7',
'&amp#1640;' => '8',
'&amp#1641;' => '9',

);




//==============================================================================
$CP['strlen'] = mb_strlen($OP['SC'], 'UTF-8');
?>
<pre dir="rtl">
<form action="index.php" method="post">
<textarea name="StartCode" lang="fa" style="width:400px;height:200;"><?php echo $OP['SC']; ?></textarea>
<input type="submit" value=" تبدیل => <?php echo $CP['strlen']; ?>">
</form>

<textarea dir="ltr" name="FinalCode" readonly style="width:400px;height:200;" >
<?php	
for($i=0;$i<$CP['strlen'];$i++){
	
	$OP['MBSS'] = mb_substr($OP['SC'] , $i , 1 , 'UTF-8');
 
	 while($OP['MBSS']){
		 
    if($OP['MBSS'] == 'آ'){echo '&amp#1570;';}
elseif($OP['MBSS'] == 'ا'){echo '&amp#1575;';}
elseif($OP['MBSS'] == 'ب'){echo '&amp#1576;';}
elseif($OP['MBSS'] == 'پ'){echo '&amp#1662;';}
elseif($OP['MBSS'] == 'ت'){echo '&amp#1578;';}
elseif($OP['MBSS'] == 'ث'){echo '&amp#1579;';}
elseif($OP['MBSS'] == 'ج'){echo '&amp#1580;';}
elseif($OP['MBSS'] == 'چ'){echo '&amp#1670;';}
elseif($OP['MBSS'] == 'ح'){echo '&amp#1581;';}
elseif($OP['MBSS'] == 'خ'){echo '&amp#1582;';}
elseif($OP['MBSS'] == 'د'){echo '&amp#1583;';}
elseif($OP['MBSS'] == 'ذ'){echo '&amp#1584;';}
elseif($OP['MBSS'] == 'ر'){echo '&amp#1585;';}
elseif($OP['MBSS'] == 'ز'){echo '&amp#1586;';}
elseif($OP['MBSS'] == 'ژ'){echo '&amp#1688;';}
elseif($OP['MBSS'] == 'س'){echo '&amp#1587;';}
elseif($OP['MBSS'] == 'ش'){echo '&amp#1588;';}
elseif($OP['MBSS'] == 'ص'){echo '&amp#1589;';}
elseif($OP['MBSS'] == 'ض'){echo '&amp#1590;';}
elseif($OP['MBSS'] == 'ط'){echo '&amp#1591;';}
elseif($OP['MBSS'] == 'ظ'){echo '&amp#1592;';}
elseif($OP['MBSS'] == 'ع'){echo '&amp#1593;';}
elseif($OP['MBSS'] == 'غ'){echo '&amp#1594;';}
elseif($OP['MBSS'] == 'ف'){echo '&amp#1601;';}
elseif($OP['MBSS'] == 'ق'){echo '&amp#1602;';}
elseif($OP['MBSS'] == 'ک'){echo '&amp#1705;';}
elseif($OP['MBSS'] == 'گ'){echo '&amp#1711;';}
elseif($OP['MBSS'] == 'ل'){echo '&amp#1604;';}
elseif($OP['MBSS'] == 'م'){echo '&amp#1605;';}
elseif($OP['MBSS'] == 'ن'){echo '&amp#1605;';}
elseif($OP['MBSS'] == 'و'){echo '&amp#1608;';}
elseif($OP['MBSS'] == 'ه'){echo '&amp#1607;';}
elseif($OP['MBSS'] == 'ی'){echo '&amp#1740;';}
elseif($OP['MBSS'] == 'ئ'){echo '&amp#1574;';}
elseif($OP['MBSS'] == '0'){echo '&amp#1632;';}
elseif($OP['MBSS'] == '1'){echo '&amp#1633;';}
elseif($OP['MBSS'] == '2'){echo '&amp#1634;';}
elseif($OP['MBSS'] == '3'){echo '&amp#1635;';}
elseif($OP['MBSS'] == '4'){echo '&amp#1636;';}
elseif($OP['MBSS'] == '5'){echo '&amp#1637;';}
elseif($OP['MBSS'] == '6'){echo '&amp#1638;';}
elseif($OP['MBSS'] == '7'){echo '&amp#1639;';}
elseif($OP['MBSS'] == '8'){echo '&amp#1640;';}
elseif($OP['MBSS'] == '9'){echo '&amp#1641;';}
elseif($OP['MBSS'] == ' '){echo '&nbsp;';}
elseif($OP['MBSS'] == '-'){echo '&ndash;';}
elseif($OP['MBSS'] == '_'){echo '_';}
elseif($OP['MBSS'] == ','){echo ',';}
elseif($OP['MBSS'] == '\''){echo '\'';}
elseif($OP['MBSS'] == '"') {echo '&quot;';}

		 break;
		 }

	}
?></textarea>
</pre>
 

Hasam

Registered User
تاریخ عضویت
2 اکتبر 2007
نوشته‌ها
665
لایک‌ها
159
محل سکونت
flynic.ir
سورس رو اینجا نوشتم بعضی کاراکتر ها strip شدن.

الان آپلود کردم.
 

فایل های ضمیمه

  • lagon666.php.txt
    1.2 KB · نمایش ها: 11
Last edited:

webs

Registered User
تاریخ عضویت
14 آپریل 2010
نوشته‌ها
2,010
لایک‌ها
1,456
محل سکونت
php.ini
اگه اینکار عرف بشه که کدهایی که می نویسیم (هرچند ساده) در اختیار عموم قرار بگیره، مطمئناً باعث پیشرفت و ارتقاء سطح وب فارسی خواهد شد.

با تشکر از sh.n.n786
 

sh.n.n786

Registered User
تاریخ عضویت
28 سپتامبر 2011
نوشته‌ها
454
لایک‌ها
94
اگه اینکار عرف بشه که کدهایی که می نویسیم (هرچند ساده) در اختیار عموم قرار بگیره، مطمئناً باعث پیشرفت و ارتقاء سطح وب فارسی خواهد شد.

با تشکر از sh.n.n786

البته رضا بهترش کرد دمش گرم دست اون درد نکنه ... :wub:
 

balabala

کاربر قدیمی پرشین تولز
کاربر قدیمی پرشین تولز
تاریخ عضویت
22 می 2005
نوشته‌ها
8,362
لایک‌ها
5,744
سن
41
محل سکونت
یه خورده اونورتر
چرا از خود توابع php استفاده نمی کنید مثل html_entity_decode
 
بالا