Start With CodeIgniter

CodeIgniter ဆိုတာ PHP Framework တခုပါ။ အကီနိုတို့ဘာကြောင့် Framework တွေကို အသုံးပြု လာကြသလဲဆိုရင် ထပ်ခါ ထပ်ခါရေးရမဲ့ code တွေကို Library တစ်ခုအနေနဲ့ စုစည်းပြီး classes တွေ Function တွေနဲ့ ပြန်ခေါ်သုံးလို့ ရတဲ့ အတွက်ကြောင့် အချိန်ကုန် သက်သာပြီး ကိုယ့်ရဲ့ web application တွေ တည်ဆောက် တဲ့အခါ လျင်မြန် လွယ်ကူမှု ရှိလို့ပါပဲ။

Why CodeIgniter?

ဘာကြောင့် PHP Framework တွေ အများကြီး ရှိတဲ့ထဲကနေ code Igniter ကိုရွေးသလို့ မေးရရင်တော့…

  • CodeIgniter က PHP4 ကော PHP5 မှာပါ အလုပ်လုပ်ပါတယ်။
  • CodeIgniter က opensource ဖြစ်ပါတယ်။
  • PHP Framework တွေထဲမှာ အပေါ့ပါးဆုံး Framework ဖြစ်ပါတယ်။
  • MVC( Module View Control) အခြေခံထားတဲ့ Framework ပါ။
  • Database တော်တော်များများမှာ အလုပ်လုပ်ပါတယ် MySQL (4.1+), MySQLi, MS SQL, Postgres, Oracle, SQLite,and ODBC.

CodeIgniter is a very light PHP framework (2.1 MB including the entire documentation) compared with:

  1. Zend Framework 1.10.2 Full – 24 MB
  2. symfony 1.4.3 – 5.1 MB
  3. CakePHP 1.2.6 – 4.5 MB Libraries တွေ Helper တွေဟာ ရှုပ်ထွေးပြီး ရေးရခက်လှတဲ့ PHP code eg: email, image manipulation, form validation, file uploading, sessions, multilingual apps တွေကို အလွယ်တကူ အစားထိုး ပေးသွားပါတယ်။

What is MVC?

MVC ဆိုတာကတော့ Model View Controller ရဲ့ အတိုကောက်ပါ။  အကြမ်းဖျဉ်း အားဖြင့်ဆိုရင် Controller က Modelနဲ့ view ကြားမှာ အလုပ်လုပ် ပေးတဲ့ အပိုင်းလေးပါ။ CodeIgniter မှာဆိုရင် Controller က Library တွေ Helper တွေကို ခေါ်သုံးပြီး အလုပ်လုပ် ပါတယ်။View ကတော့ User Interface အပိုင်းပါ။ ဒါကြောင့် နောက်ပိုင်း ကိုယ့် project ကိုအမြင်အားဖြင့် ပြုပြင် ပြောင်းလဲ ချင်တယ်ဆိုရင် ကိုယ့် project အလုပ်လုပ်ပုံကို မထိခိုက်စေပဲ view ကို ပြင်ခြင်းဖြင့် ပြောင်းလဲ နိုင်ပါတယ်။့ Model ဆိုတာဟာ Database နဲ့ ပတ်သတ်ပြီး အလုပ်လုပ်တဲ့ အပိုင်းပါ။ View Form ကနေ User ပို့လိုက် / ဖြည့်လိုက်တဲ့ data တွေကို Controller က မှတ်ယူပြီး Model က Database နှင့် ချိတ်ဆက်ပြီး CREATE / DELETE / SELECT / UPATE အလုပ်တွေကို လုပ်ပေးပါတယ်။

Start with CodeIgniter

  • CodeIgniter ကို စတင် အသုံးပြုတော့မယ် ဆိုရင်တော့ http://www.codeigniter.com/ ကနေ နောက်ဆုံးပေါ် CI ကို Download ချပေးပါ။
  • ပြီးရင် သင့်ရဲ့ Local Server ရှိတဲ့ အပိုင်းလေးမှာ သွားသိမ်းပေးပါ။ ဥပမာအားဖြင့် C:\xampp\htdoc\CI
  • ပြီးရင် Zip ဖြေပြီး ကိုယ့်ပေးချင်တဲ့ နာမည်လေး ပြောင်းပေးလိုက်ပါ။ ဥပမာအားဖြင့် CodeIgniter_1.7.0 Folder လေးကို CI လို့ပေးလိုက်ပါ။
  • ပြီးရင် browser ကိနေ localhost/CI လို့ခေါ်ကြည့်လိုက်ရင် CI ရဲ့Welcome Message လေးပေါ်လာမှာပါ။

CodeIgniter Folder

ဒီတဆင့်မှာဆိုရင်တော့ CI ရဲ့ Folderတွေအလုပ်လုပ်ပုံအဆင့်ဆင့်ကိုရှင်းပြပေးချင်ပါတယ်။ System Folder အောက်မှာရှိတဲ့ Application Folder ကလွဲရင် ကျန်တဲ့ Folder တွေအားလုံးဟာ CI ရဲ့ Build in folder တွေပါ။ Application Folder ကမှသာ ကိုယ်အလုပ် လုပ်ရမဲ့ Application Folder ဖြစ်ပါတယ်။ ဒါကြောင့် နောက်ပိုင်း ကိုယ့်ရေးမဲ့ Controller တွေ View တွေ Model တွေကို Application Folder အောက်က သက်ဆိုင်ရာ Controller Folder /View Folder/ Module Folder တွေအောက်မှာသာ သိမ်းပေးရမှာပါ။ Application Folder အောက်မှာရှိတဲ့ Config Folder ဟာ အရေးကြီးဆုံး Folder လို့ ပြောရင် မမှားပါဘူး။ သူ့ထဲမှာ ကိုယ့်ရဲ့ database config/autoload /route တွေကိုအဆင့်ဆင့် ပြင်ပေးရမှာ ဖြစ်ပါတယ်။

CI ကိုကြိုက်တဲ့ အချက်တစ်ချက်ကတော့ အခုလိုမျိုး Folder လိုက် ခွဲခြားပြီး သိမ်းထားတဲ့အတွက် နောင်တစ်ချိန် လိုချင်ပြုပြင် ချင်တာမျိုးရှိရင် အလွယ်တကူပဲ ရှာဖွေပြီး ပြုပြင်နိုင်ပါတယ်။ အခုဆိုရင် CI ဆိုတာ ဘာလဲ၊ ဘာကြောင့် အသုံးပြုရလဲ ဘယ်လိုသိမ်းပြီး ဘယ်လို အသုံးပြုရသလဲ ဆိုတာတွေကို အကီနို ရှင်းပြပြီးခဲ့ပါပြီ။ ဒါကြောင့် နောက်ပိုင်း post တွေမှာ CI နဲ့ Example လေးတွေကို ရေးပြီး အလုပ်လုပ်ပုံကို ရှင်းပြ ပေးသွားမှာပါ။ အကီနို သိရှိ နားလည် ထားတာတွေကို ပြန်လည်ပြီး မျှဝေပေးတာ ဖြစ်တဲ့အတွက် အမှားတစုံတရာနဲ့ နားမလည် တာများရှိခဲ့ရင် ပြန်လည် မေးနိုင်ပါတယ်။

အားလုံးပဲ programming မှာ ပျော်ရွှင် နိုင်ကြပါစေ။

Ref: http://net.tutsplus.com/

Facebook comments:

8 Responses

  1. Zack says:

    Hi Sis,
    Module ဆိုတာဟာ Database နဲ့ပတ်သတ်ပြီးအလုပ်လုပ်တဲ့ အပိုင်းပါ။ View Form ကနေ User ပို့လိုက်/ဖြည့်လိုက်တဲ့ data တွေကို Controller က မှတ်ယူပြီး Module က Database နှင့်ချိန်ဆက်ပြီး CREATE/DELETE/SELECT/UPATE အလုပ်တွေကိုလုပ်ပေးပါတယ်။
    -> I think that it should be model, not module :)

  2. ahkeno says:

    sorry bro I need to change..wrong type :)

  3. Ingyin says:

    အစ်မ နောက် post အတွက် ဆက်လက် စောင့်မျှော်နေမယ်နော်။ ကျေးဇူးအထူးတင်ပါသည်
    အခုလို ရေးသားပေးတဲ့အတွက်

  4. ကိုဖြိုးဇော်ထွန်း says:

    မြန်မာ ကျူတိုရီရယ် ဆိုဒ်ကိုသုံးရင်းနဲ့ Ahkeno ကိုသိခဲ့တာပါ။ Ahkeno ရဲ့ Blog တွေ ဆောင်းပါးတွေ ဖတ်ရင်းနဲ့ Ahkeno ဆီက ပရိုဂရမ်မင်း ဗဟုသုတတွေရခဲ့ရတယ်။
    Ahkeno ရဲ ကိုယ်ပိုင် ဝက်ဆိုက် (www.ahkeno.com) က Menu Bar လေးဘေးရောက်နေတာပြင်ပေးဖို့ Coding တွေရေးပေးလိုက်တယ်။
    ahkeno ရဲ့ Menu Bar က ပုံ ၁.၁ ကနေ ပု ၁.၂ ( URL: http://picasaweb.google.com/poohspear/Ahkeno#5522016192364670226 ) လိုမျိုး အလယ်ရောက်တောင်လုပ်ဖို့ CSS Coding အနည်းငယ်ဘဲလိုပါတယ်။
    ပုံ ၂.၁ ( URL : http://picasaweb.google.com/poohspear/Ahkeno#5522016193247228274 ) ကိုကြည့်ပါ။ အဲဒီမှာ အနီရောင်နဲ့အကြည်ဖောက်ထားတဲ့ Coding တွေကို ပြင်မှာပါ။
    CSS 3.0 မှာ Box တစ်ခုကိုအလယ်ပို့ချင်ရင် သူ့ကို အလျား တန်ဖိုး (Width Attribute) သတ်မှတ်ပြီး မာဂျင်ကို အော်တိုထားလိုက်ရင် အဲဒီ Box က အလယ်ကိုရောက်သွားပါတယ်။
    ဒီတော့ ကျွန်တော်က ဘယ်ဘက် မာဂျင် ကို ၁၁ဝ ပစ်ဆယ် သတ်မှတ်ထားတာကို ဖျက်လိုက်ပြီး အပေါ်မာဂျင်ကို သုံည ကျန်တာကို အော်တိုသ်တ်မှတ်လိုက်ပါတယ်။ ပုံ ၂.၂ က လိုင်း ၁၆၃ ကိုကြည့်ပါ။ ပြီးတော့ Ahkeno က လိုင်း ၁၆၅ မှာ အလျားတန်ဖိုး အော်တိုပေးထားတာကို ၁၀၀ဝ ပစ်ဆယ် သတ်မှတ်လိုက်ပါတယ်။
    အဲဒီမှာ MEnu Bar ကိစ္စ အဆင်ပြေသွားပါပြီ။ အဲ ဒါပေမဲ့ မီနူးထဲမှာ ရှိပေမယ့် Uncountable List က နည်းနည်းပြင်ရဦးမယ်ဗျ။ Ahkeno က လိုင်း 172, 173, 174, 175 မှာ မာဂျင်တန်ဖိုး Padding တန်ဖိုးတွေ ပေးထားတာကို ကျွန်တော်က ဝ ပေးလိုက်ပါတယ်။
    ဒီလောက်ဆို Figure 1.2 ရပါပြီ ။
    Ahkeno ပျော်ရွှင်ပါစေ။

    မှ
    ကိုဖြိုးဇော်ထွန်း

  5. ahkeno says:

    ဟုတ်ကဲ့ပါ အခုလိုမျိုးစေတနာထားပြီး အသေးစိတ်ပြောပြပေးတဲ့အတွက် ကျေးဇူးအများကြီးတင်ပါတယ်။ အကီနိုလည်း လိုတာလေးတွေထပ်ပြုပြင်လိုက်ပါတယ်။ ခုထိစိတ်တိုင်းမကျသေးတဲ့ ဒီဇိုင်းကြောင့် တခုပြင်လိုက်တခု မှားလိုက်ဖြစ်နေတာပါ။
    ကျေးဇူးတင်စွာဖြင့်
    အကီနိူ

  6. ငယ်လေး says:

    မင်္ဂလာပါ အမ အကီနို
    သမီးက ခုမှ PHP ကလေ့လာအသုံးပြုနေသူတစ်ဦးပါ။ PHP နဲ့ class တွေ module တွေခွဲရေးတဲ့ အဆင့်ထိတော့ မရောက်သေးပါဘူး။ လေ့လာနေဆဲမို့လို့ အမရေးထားတဲ့ Programming Knowledge (PHP) တွေကို ဖတ်ရတာ တော်တော်လေး ဗဟုသုတရပါတယ်။ နောက်လည်းဒီထက် ကောင်းတဲ့ Post ကောင်းကောင်းလေးတွေကို ဆက်လက်မျှဝေပါအုံးလို ့။

    ကျေးဇူးတင်လျှက်
    ငယ်လေး

  7. mgmg says:

    I already Install codeigniter but I don’t know how to creat web application . I am a beginner who studying php. please solve my problem. Thank you very much

Leave a comment


*