টপিকঃ পিএইচপিতে বাংলা তারিখ ও সময় দেখানো

আজ সকালে তারেক ভাইয়ের সাইটে ডু মারতে গিয়ে জিনিশটা চোখে পড়ল তাই একটা ফাংশন লিখলাম যেটা মোটামুটি ছোট আর ব্যবহারও সহজ।
ফাংশনঃ

 function bn_date($str)
 {
     $en = array(1,2,3,4,5,6,7,8,9,0);
    $bn = array('১','২','৩','৪','৫','৬','৭','৮','৯','০');
    $str = str_replace($en, $bn, $str);
    $en = array( 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December' );
    $en_short = array( 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'June', 'July', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec' );
    $bn = array( 'জানুয়ারী', 'ফেব্রুয়ারী', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'অগাস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর' );
    $str = str_replace( $en, $bn, $str );
    $str = str_replace( $en_short, $bn, $str );
    $en = array('Saturday','Sunday','Monday','Tuesday','Wednesday','Thursday','Friday');
     $en_short = array('Sat','Sun','Mon','Tue','Wed','Thu','Fri');
     $bn_short = array('শনি', 'রবি','সোম','মঙ্গল','বুধ','বৃহঃ','শুক্র');
     $bn = array('শনিবার','রবিবার','সোমবার','মঙ্গলবার','বুধবার','বৃহস্পতিবার','শুক্রবার');
     $str = str_replace( $en, $bn, $str );
     $str = str_replace( $en_short, $bn_short, $str );
     $en = array( 'am', 'pm' );
    $bn = array( 'পূর্বাহ্ন', 'অপরাহ্ন' );
    $str = str_replace( $en, $bn, $str );
     return $str;
 }

টেস্টি কোডঃ

echo "Main Style:".date('Y'."-".'M'."-".'D')."<br />\n";
echo "In Bangla :".bn_date(date('Y'."-".'M'."-".'D'))."<br />\n";

echo "Main Style:".date('y'."-".'M'."-".'D')."<br />\n";
echo "In Bangla :".bn_date(date('y'."-".'M'."-".'D'))."<br />\n";

echo "Main Style:".date('Y'."-".'m'."-".'D')."<br />\n";
echo "In Bangla :".bn_date(date('Y'."-".'n'."-".'D'))."<br />\n";

echo "Main Style:".date('Y'."-".'M'."-".'d')."<br />\n";
echo "In Bangla :".bn_date(date('Y'."-".'M'."-".'d'))."<br />\n";

echo "Main Style:".date('Y'."-".'m'."-".'d')."<br />\n";
echo "In Bangla :".bn_date(date('Y'."-".'m'."-".'d'))."<br />\n";

echo "Main Style:".date('Y'."-".'m'."-".'l')."<br />\n";
echo "In Bangla :".bn_date(date('Y'."-".'m'."-".'l'))."<br />\n";

echo "Main Style:".date(''."-".'M'."-".'D'. " | ". 'G'.":".'i A')."<br />\n";
echo bn_date(date('D'."-".'M'."-".'D'. " | ". 'G'.":".'i a'));

আউটপুটঃ

Main Style:2013-Feb-Thu
In Bangla :২০১৩-ফেব্রুয়ারী-বৃহঃ
Main Style:13-Feb-Thu
In Bangla :১৩-ফেব্রুয়ারী-বৃহঃ
Main Style:2013-02-Thu
In Bangla :২০১৩-২-বৃহঃ
Main Style:2013-Feb-07
In Bangla :২০১৩-ফেব্রুয়ারী-০৭
Main Style:2013-02-07
In Bangla :২০১৩-০২-০৭
Main Style:2013-02-Thursday
In Bangla :২০১৩-০২-বৃহস্পতিবার
Main Style:-Feb-Thu | 6:24 AM
বৃহঃ-ফেব্রুয়ারী-বৃহঃ | ৬:২৪ পূর্বাহ্ন

এটা ব্যবহার করা খুবি সহজ কেবল bn_date() ফাংশনকে কল করলেই হল । এমনকি echo bn_date("2013-02-07"); এভাবে কল করলেও কাজ করবে।যেকোনো যায়গায় ব্যবহার করতে পারবেন ক্রেডিট / কপিরাইটের চিন্তা করার কোনো অপশন নাই ।

এই ব্যাক্তির সকল লেখা কাল্পনিক , জীবিত অথবা মৃত কারো সাথে মিল পাওয়া গেলে তা সম্পুর্ন কাকতালীয়, যদি লেখা জীবিত অথবা মৃত কারো সাথে মিলে যায় তার দায় এই আইডির মালিক কোনক্রমেই বহন করবেন না। এই ব্যক্তির সকল লেখা পাগলের প্রলাপের ন্যায় এই লেখা কোন প্রকার মতপ্রকাশ অথবা রেফারেন্স হিসাবে ব্যবহার করা যাবে না।

Re: পিএইচপিতে বাংলা তারিখ ও সময় দেখানো

লিনাক্সে "bn_BD" locale ইন্সটল করা থাকলে নিচের কোড কাজ করার কথা।

setlocale(LC_ALL, "bn_BD"); 
echo strftime("%c\n");

বৃহস্পতিবার ০৭ ফেব্রু ২০১৩ ০১:৩৯:২০ অপরাহ্ণ BDT

Feed থেকে ফোরাম সিগনেচার, imgsign.com
ব্লগ: shiplu.mokadd.im
মুখে তুলে কেউ খাইয়ে দেবে না। নিজের হাতেই সেটা করতে হবে।

শিপলু'এর ওয়েবসাইট

লেখাটি GPL v3 এর অধীনে প্রকাশিত

Re: পিএইচপিতে বাংলা তারিখ ও সময় দেখানো

যেকোনো যায়গায় ব্যবহার করতে পারবেন ক্রেডিট / কপিরাইটের চিন্তা করার কোনো অপশন নাই ।

ওয়ার্ডপ্রেস ওয়েব সাইটে এটা কোথায় ব্যবহার করবো?

আমার সকল টপিক

কোনো কিছু বলার নেই আজ আর...

Re: পিএইচপিতে বাংলা তারিখ ও সময় দেখানো

গৌতম লিখেছেন:

ওয়ার্ডপ্রেস ওয়েব সাইটে এটা কোথায় ব্যবহার করবো?

থীমের function.php তে।
@শিপলু ভাই , জানতাম না  surprised

এই ব্যাক্তির সকল লেখা কাল্পনিক , জীবিত অথবা মৃত কারো সাথে মিল পাওয়া গেলে তা সম্পুর্ন কাকতালীয়, যদি লেখা জীবিত অথবা মৃত কারো সাথে মিলে যায় তার দায় এই আইডির মালিক কোনক্রমেই বহন করবেন না। এই ব্যক্তির সকল লেখা পাগলের প্রলাপের ন্যায় এই লেখা কোন প্রকার মতপ্রকাশ অথবা রেফারেন্স হিসাবে ব্যবহার করা যাবে না।

Re: পিএইচপিতে বাংলা তারিখ ও সময় দেখানো

ট্রাই করে দেখি।

আমার সকল টপিক

কোনো কিছু বলার নেই আজ আর...

Re: পিএইচপিতে বাংলা তারিখ ও সময় দেখানো

শিক্ষা মূলক একটি পোষ্ট দেখে ভাল লাগলো এবং ভাল হইছে।

সাইফুল_বিডি লিখেছেন:

echo "In Bangla :".bn_date(date('Y'."-".'M'."-".'D'))."<br />\n";

আউটপুট এর জন্য এই ভাবে লিখলে মনে হয় সহজ হয়...

echo bn_date(date('D, d M Y, h:i a'));

আউটপুট

বৃহঃ, ০৭ ফেব্রুয়ারী ২০১৩, ০৭:৩৯ অপরাহ্ন
Sohel Rana
Web Designer & Developer

Re: পিএইচপিতে বাংলা তারিখ ও সময় দেখানো

sohel6bd লিখেছেন:

আউটপুট এর জন্য এই ভাবে লিখলে মনে হয় সহজ হয়...

আমি কেবল ফরমেট দেখানোর চেস্টা করেছি , এই যা । যার যেভাবে খুশি ব্যবহার করতে পারবে।

এই ব্যাক্তির সকল লেখা কাল্পনিক , জীবিত অথবা মৃত কারো সাথে মিল পাওয়া গেলে তা সম্পুর্ন কাকতালীয়, যদি লেখা জীবিত অথবা মৃত কারো সাথে মিলে যায় তার দায় এই আইডির মালিক কোনক্রমেই বহন করবেন না। এই ব্যক্তির সকল লেখা পাগলের প্রলাপের ন্যায় এই লেখা কোন প্রকার মতপ্রকাশ অথবা রেফারেন্স হিসাবে ব্যবহার করা যাবে না।

Re: পিএইচপিতে বাংলা তারিখ ও সময় দেখানো

সাইফুল_বিডি লিখেছেন:

আজ সকালে তারেক ভাইয়ের সাইটে ডু মারতে গিয়ে জিনিশটা চোখে পড়ল তাই একটা ফাংশন লিখলাম যেটা মোটামুটি ছোট আর ব্যবহারও সহজ।
ফাংশনঃ

 function bn_date($str)
 {
     $en = array(1,2,3,4,5,6,7,8,9,0);
    $bn = array('১','২','৩','৪','৫','৬','৭','৮','৯','০');
    $str = str_replace($en, $bn, $str);
    $en = array( 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December' );
    $en_short = array( 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'June', 'July', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec' );
    $bn = array( 'জানুয়ারী', 'ফেব্রুয়ারী', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'অগাস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর' );
    $str = str_replace( $en, $bn, $str );
    $str = str_replace( $en_short, $bn, $str );
    $en = array('Saturday','Sunday','Monday','Tuesday','Wednesday','Thursday','Friday');
     $en_short = array('Sat','Sun','Mon','Tue','Wed','Thu','Fri');
     $bn_short = array('শনি', 'রবি','সোম','মঙ্গল','বুধ','বৃহঃ','শুক্র');
     $bn = array('শনিবার','রবিবার','সোমবার','মঙ্গলবার','বুধবার','বৃহস্পতিবার','শুক্রবার');
     $str = str_replace( $en, $bn, $str );
     $str = str_replace( $en_short, $bn_short, $str );
     $en = array( 'am', 'pm' );
    $bn = array( 'পূর্বাহ্ন', 'অপরাহ্ন' );
    $str = str_replace( $en, $bn, $str );
     return $str;
 }

টেস্টি কোডঃ

echo "Main Style:".date('Y'."-".'M'."-".'D')."<br />\n";
echo "In Bangla :".bn_date(date('Y'."-".'M'."-".'D'))."<br />\n";

echo "Main Style:".date('y'."-".'M'."-".'D')."<br />\n";
echo "In Bangla :".bn_date(date('y'."-".'M'."-".'D'))."<br />\n";

echo "Main Style:".date('Y'."-".'m'."-".'D')."<br />\n";
echo "In Bangla :".bn_date(date('Y'."-".'n'."-".'D'))."<br />\n";

echo "Main Style:".date('Y'."-".'M'."-".'d')."<br />\n";
echo "In Bangla :".bn_date(date('Y'."-".'M'."-".'d'))."<br />\n";

echo "Main Style:".date('Y'."-".'m'."-".'d')."<br />\n";
echo "In Bangla :".bn_date(date('Y'."-".'m'."-".'d'))."<br />\n";

echo "Main Style:".date('Y'."-".'m'."-".'l')."<br />\n";
echo "In Bangla :".bn_date(date('Y'."-".'m'."-".'l'))."<br />\n";

echo "Main Style:".date(''."-".'M'."-".'D'. " | ". 'G'.":".'i A')."<br />\n";
echo bn_date(date('D'."-".'M'."-".'D'. " | ". 'G'.":".'i a'));

আউটপুটঃ

Main Style:2013-Feb-Thu
In Bangla :২০১৩-ফেব্রুয়ারী-বৃহঃ
Main Style:13-Feb-Thu
In Bangla :১৩-ফেব্রুয়ারী-বৃহঃ
Main Style:2013-02-Thu
In Bangla :২০১৩-২-বৃহঃ
Main Style:2013-Feb-07
In Bangla :২০১৩-ফেব্রুয়ারী-০৭
Main Style:2013-02-07
In Bangla :২০১৩-০২-০৭
Main Style:2013-02-Thursday
In Bangla :২০১৩-০২-বৃহস্পতিবার
Main Style:-Feb-Thu | 6:24 AM
বৃহঃ-ফেব্রুয়ারী-বৃহঃ | ৬:২৪ পূর্বাহ্ন

এটা ব্যবহার করা খুবি সহজ কেবল bn_date() ফাংশনকে কল করলেই হল । এমনকি echo bn_date("2013-02-07"); এভাবে কল করলেও কাজ করবে।যেকোনো যায়গায় ব্যবহার করতে পারবেন ক্রেডিট / কপিরাইটের চিন্তা করার কোনো অপশন নাই ।

খুব ই ভালো জিনিশ , কিন্তু যার সার্ভার এর উপর কন্ট্রোল নাই সে এটা করলে সেই সার্ভার এর টাইম ই দেখাবে । আমি আমার ভিপিএস এ নাহয় টাইম জোন পরিবর্তন করে নিলাম , কিন্তু সবাই পারবেনা ....  sad

সত্যি বলতে ভয় পাওয়াটা আমাকে জয় করতেই হবে !!!

লেখাটি GPL v3 এর অধীনে প্রকাশিত

Re: পিএইচপিতে বাংলা তারিখ ও সময় দেখানো

obakfahad লিখেছেন:

যার সার্ভার এর উপর কন্ট্রোল নাই সে এটা করলে সেই সার্ভার এর টাইম ই দেখাবে ।

সেটা সমস্যা নাই। সার্ভারের সময়ের সাথে প্রয়োজন মত যোগ/বিয়োগ করে নিলেই চলবে।

১০

Re: পিএইচপিতে বাংলা তারিখ ও সময় দেখানো

সাইফুল ভাই এবং অন্যান্যরা :-এইযে আপনারা পি এইচ পি, মাসিকিউএল, জেকিউরি এতো সব কঠিন নাম বলেন এগুলো শেখা কি সহজ না কঠিন?  ওয়েব প্রোগ্রামিং বাসায় বসে সুন্দরভাবে শেখা যাবে কি? আমিতো ব্লগ স্পট ছাড়া আর কিছু জানিনা। কেউ কি আমার গুরু হওয়ার দ্বায়িত্বটা নেবেন?

আর মানুষের মধ্যে  কিছু লোক এমন রয়েছে যারা বলে,আমরা আল্লাহ ও পরকালের প্রতি ঈমান এনেছি অথচ আদৌ তারা ঈমানদার নয়-সূরা বাক্বারাহ আয়াত নং০৮