یک وبلاگ دیگر از یک برنامه نویس دیگر
نوشتههایی با برچسب Zend Framework
Zend_Translate و GnuGetText
بهمن ۱۴م
یکی از اصولی که سعی میکنم هنگام طراحی رعایت کنم، استفاده نکردن هرچه بیشتر!!! از زبان فارسیست. یعنی سعی میکنم تحت هیچ شرایطی توی کد حتی یک کلمه به زبانی غیر از انگلیسی، خصوصا فارسی ننویسم.
علت سادست، فارسی میتونه باعث مشکلات زیادی در زمان کد نویسی بشه خصوصا مشکلاتی که معمولا ویرایشگرهایی که من استفاده میکنم با این زبان دارن.
راه حل سادست، استفاده از سیستمهای مترجم، که من این وسط GnuGetText رو ترجیح میدم. اونم تازه اینکه مربوطه به گنو و منم تا گنو هست هیچ مشابهی رو استفاده نمیکنم، مهم نیست که چه امکاناتی ارایه میکنه!
توی این پست و پست بعدی قصد دارم در مورد این سیستم ترجمه و چگونگی اتصال اون با Zend Framework بنویسم. اول درمورد اینکه چطور این سیستم رو فعال کنیم و دوم اینکه چطور میشه قابلیتهاشو بیشتر کرد و یه سیستم ترجمه پویا هم ایجاد کرد خواهم نوشت.
اول از همه (معمولا تو bootstrap) باید یه شی ایجاد کنیم :
define('LANGUAGE','fa_IR');
$trans=new Zend_Translate("Zend_Translate_Adapter_Gettext",
"/path/to/language/".LANGUAGE.".mo",
LANGUAGE);
البته بستگی داره چه زبانی مد نظرتون باشه. به ازای هر زبان باید یه فایل با پسوند mo وجود داشته باشه (که مسیرش کاملش رو به عنوان آرگومان دوم به این سازنده فرستادیم.). حالا دو مساله پیش میاد. یکی اینکه چطور این فایل mo رو بسازیم. اینو میذارم برای یه کم پایینتر، مساله فعلا اینه که چطور از این شی که ساخته شده برای ترجمه استفاده کرد. ادامه مطلب
ارسال mail از طریق Zend Framework
تیر ۲۲م
لطفا کامنتهای داخل کدها رو هم بخونید!! بعضیاشون واقعا ضروری هستن!
Zend Framework انتخاب من برای یک فریم ورک برای کار با PHP هستش. اینبار میخوام درباره چگونگی ارسال ایمیل به صورتی که بشه براش قالب ایجاد کرد بنویسم. این کد رو من خیلی وقت نیست که نوشتم. اگه مشکل داشت خوشحال میشم برام بنویسید تا بدونم.
برای استفاده باید چند تا کار انجام بدید. اول اینکه توی فایل تنظیمات برنامه خودتون یه سری اطلاعات اضافه کنید. اگه از ini استفاده میکنید اینو به فایل تنظیمات اضافه کنید :
mail.from= "you@yoursite.com" mail.name= "Your name" mail.templatePath=APPLICATION_PATH "/../../layouts/mails" mail.host=imap.yoursite.com mail.port=25 mail.param.auth=login mail.param.username=you@yoursite.com mail.param.password=yourpassword
اینو توی بخش مناسب بنویسید مثلا برای development توی بخش development و… فقط مساله templatePath هست که اونم آدرس رو عوض کنید با آدرسی که میخواید view های مربوط به ایمیل قرار بگیره. (این رو قطعا باید بر اساس پروژه خودتون عوض کنید)
گام بعدی اینه که تنظیمات رو بخونید. اینجوری (معمولا توی bootstrap):
//Load yor config CHANGE PATH TO YOUR CONFIG FILE!!!!!!
$config=new Zend_Config_Ini(APPLICATION_PATH . '/../../configs/application.ini',APPLICATION_ENV);
Zend_Registry::set('config',$config);
//Do your stuff......
//Now its time to setup mail system :D
$config=Zend_Registry::get('config');
$mailParams=$config->mail->toArray();
Zend_Registry::set('mail_params',$mailParams);
شکه نشید ولی تا الان هیچ کاری انجام نشده :) حالا وقت ایجاد Cybits_Utils_View_Helper_SendMail هستش. توی فولدر library چند تا فولدر باید درست شه :
ادامه مطلب




