Created
January 30, 2015 12:16
-
-
Save tareq1988/aa48e70b8dcdd55056dd to your computer and use it in GitHub Desktop.
Bangla to Phonetic English Conversion
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* Tokenize Unicode strings | |
* | |
* @param string $str | |
* @link http://php.net/str_split | |
* | |
* @return array | |
*/ | |
function str_split_unicode($str) { | |
return preg_split("//u", $str, -1, PREG_SPLIT_NO_EMPTY); | |
} | |
/** | |
* Convert any Bangla sentance to phonetic english | |
* | |
* @param string $string the Bangla string | |
* | |
* @return string translated string | |
*/ | |
function str_bn_to_en( $string ) { | |
static $mapping = array( | |
'ক' => 'k', | |
'খ' => 'kh', | |
'গ' => 'g', | |
'ঘ' => 'gh', | |
'ঙ' => 'ng', | |
'চ' => 'c', | |
'ছ' => 'ch', | |
'জ' => 'j', | |
'ঝ' => 'jh', | |
'ঞ' => 'nch', | |
'ট' => 't', | |
'ঠ' => 'th', | |
'ড' => 'd', | |
'ঢ' => 'dh', | |
'ণ' => 'n', | |
'ত' => 't', | |
'থ' => 'th', | |
'দ' => 'd', | |
'ধ' => 'dh', | |
'ন' => 'n', | |
'প' => 'p', | |
'ফ' => 'ph', | |
'ব' => 'b', | |
'ভ' => 'v', | |
'ম' => 'm', | |
'য' => 'j', | |
'র' => 'r', | |
'ল' => 'l', | |
'শ' => 'sh', | |
'ষ' => 'sh', | |
'স' => 's', | |
'হ' => 'h', | |
'ড়' => 'r', | |
'ঢ়' => 'r', | |
'য়' => 'oy', | |
'ৎ' => 't', | |
'ং' => 'ng', | |
'ঁ' => '', | |
'ঃ' => ':', | |
'অ' => 'o', | |
'আ' => 'a', | |
'ই' => 'i', | |
'ঈ' => 'i', | |
'উ' => 'u', | |
'ঊ' => 'u', | |
'ৃ' => 'rr', | |
'এ' => 'e', | |
'ঐ' => 'oi', | |
'ও' => 'o', | |
'ঔ' => 'ou', | |
'ৌ' => 'ou', | |
'া' => 'a', | |
'ো' => 'o', | |
'ে' => 'e', | |
'ি' => 'i', | |
'ু' => 'u', | |
'্' => '', | |
'ী' => 'i', | |
'ূ' => 'u', | |
'।' => '.', | |
'০' => '0', | |
'১' => '1', | |
'২' => '2', | |
'৩' => '3', | |
'৪' => '4', | |
'৫' => '5', | |
'৬' => '6', | |
'৭' => '7', | |
'৮' => '8', | |
'৯' => '9', | |
); | |
$token = str_split_unicode( $string ); | |
$converted = ''; | |
foreach ($token as $bn) { | |
if ( array_key_exists( $bn, $mapping ) ) { | |
$converted .= $mapping[ $bn ]; | |
} else { | |
$converted .= $bn; | |
} | |
} | |
return $converted; | |
} | |
$string = 'আগুনের দিন শেষ হবে একদিন, | |
ঝর্ণার সাথে গান হবে একদিন, | |
এ পৃথিবী ছেড়ে চলো যাই, | |
স্বপ্নের সিড়ি বেয়ে সীমাহীন ।। | |
হৃদয়ে জ্বলছে যে বহ্নি, | |
সে একদিন তারা হয়ে জ্বলবে, | |
জোৎস্নায় নীল হবে আগ্নি, | |
সে আলোর পথ ধরে চলবে, | |
সেই যাত্রায় কেন হায়, | |
ভয় হয় নিশিদিন'; | |
echo '<h1>Original String:</h1>'; | |
echo $string; | |
echo '<hr />'; | |
echo '<h1>Conversion:</h1>'; | |
echo str_bn_to_en( $string ); |
Great.
ছুডু কাজের জন্য মেলা খাটছেন দেখি। অভ্রর জেকোয়ারী প্লাগিনটা থেকে ভ্যালু পিক করে এক্সট্রাক্ট করতে পারেন ।
আগুনের দিন শেষ হবে একদিন https://www.youtube.com/watch?v=DmSzcd_FhbU
good try..........
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Thanks Brother.