Rain Framework ကုိေလ့လာျခင္း
September 23, 2013
Rain FrameWork ကုိေလ့လာျခင္း
Rain FrameWork ဟာ MVC စနစ္သံုး PHP Framework တစ္ခုျဖစ္ပါတယ္ ။
သူက စြမ္းေဆာင္ရည္ ေကာင္းမြန္သလိုသံုးရတာလည္းလြယ္ပါတယ္ ။
အဓိကကေတာ့ ေပါ့ေပါ့ပါးပါး သံုးႏိုင္တာပါပဲ ။ သူ႕ရဲ႕တည္ေဆာက္ပံုကလည္းရိုးရွင္းလြယ္ကူ
လွပါတယ္ ။ ကၽြန္ေတာ္တို႕အသံုးခ်ရမွာက Loader ရယ္ Controller ရယ္ Views ရယ္
အဲဒီဖိုဒါသံုးခုကုိ ပဲ အသံုးခ်ရမွာပါ ။ ေအာက္ကပံုစံေလးကုိၾကည့္ၾကည့္ပါ ။
Models
^
|
UserInput > Loader -----> Controllers ----->Views
Loader
သူက ဒီ Framework ရဲ႕ အသည္းႏွလံုးလိုပါပဲ ။သူက System folder ထဲဲမွာရွိပါတယ္
* get the input
* include libraries
* init settings
* connect database
* authenticate the user
* load the controller, selected by the user with the URI (es index.php/news/list/)
* draw the output စတ့ဲလုပ္ငန္းစဥ္ေတြ ေခၚသံုးဖို႕ ကုတ္ေတြသူ႕ထဲမွာပါ၀င္ေနသလုိအကူအညီ
ေပးမယ့္ တစ္ျခား ဖိုင္ေတြနဲ႕လည္းခ်ိတ္ဆက္ထားပါတယ္ ။
Controller
သူက ၀န္ထမ္းတစ္ေယာက္နဲ႔ တူပါတယ္ ။Models ထဲကျပန္ယူရမယ့္အခ်က္အလက္ေတြယူတာနဲ႕ Views ထဲ
က Output ေတြ ထုတ္ေပးတာေတြကုိေဆာင္ရြက္ပါတယ္။
Models
သူက Database ထဲက အခ်က္အလက္ေတြ ထုတ္တာသြင္းတာ လုပ္ေပးပါတယ္။
Views
HTML Template ကုိဒီထဲမွာေရးပါတယ္ ။Browser မွာေဖာ္ျပမွာေတြကုိဒီမွာေရးပါတယ္။
ဒီလို ဖိုင္တစ္ခုခ်င္းစီရဲ႕အလုပ္လုပ္ပံုနဲ႕သေဘာသဘာ၀ကုိသိၿပီးၿပီဆိုရင္ က်ဴတိုရီယယ္ေလးတစ္ခုေလာက္စမ္း
ၾကည့္ၾကစို႕ (ဆက္ရန္.....)
ပထမ Rain Framework ကုိဒီကေနေဒါင္းလိုက္ပါ ။ၿပီးေတာ့ Zip ေျဖလိုက္ ။ ဒါဆို ဖိုင္ႏွစ္ဖိုင္ထြက္လာလိမ့္မယ္
_MACOSX ဆိုတဲ့ဖိုင္က Mac အတြက္ ျဖစ္ပါတယ္ ။ Mac သမားမဟုတ္ဘူးဆိုရင္ေတာ့ ဖ်က္ပစ္လိုက္ႏိုင္ပါတယ္ ။
ေနာက္တစ္ဖိုင္ကုိ နာမည္ျပင္ခ်င္ျပင္လို႕ရပါတယ္ ။ၿပီးရင္ေတာ့ Web Server ထဲ သြားထားလိုက္ပါေတာ့ ။
ၿပီးရင္ Server ကုိ Run ၿပီး Browser ကေန Localhost/rainframework ကုိလွမ္းေခၚၾကည့္ ။
Error Message ကုိေတြ႕ပါလိမ့္မယ္ ။Error မွာ Server=Loaclhost ,User=root ,Password= သံုးမယ္
ဆိုတာေလးကုိ ေတြ႕ရပါလိမ့္မယ္ ။ ဒါဆိုရင္ သူ႕Server Setting က ကုိယ့္Server Setting နဲ႕ မကုိက္လို႕ျဖစ္တယ္ဆိုတာ
ခန္႕မွန္းလို႕ရေလာက္ပါတယ္ ။Wamp သမားဆိုရင္ေတာ့ WWW ထဲ Xampp သမားဆိုရင္ေတာ့ htdocs ထဲ သြား
ၿပီး rainframework>config >db.php ကုိ Notepad ++ နဲ႕ဖြင့္ၾကည့္လိုက္ပါ ။
သူ႕ကုတ္က ေအာက္ကအတိုင္းပါ ။
<?php
// default database
$server = "mysql";
$hostname = "localhost";
$username = "root";
$password = "root";
$database = "rainframework2";
if( !defined("DB_PREFIX" ) )
define( "DB_PREFIX", "RAIN_" );
?>
ကၽြန္ေတာ္တို႕ Server ကုိ Default အတိုင္း Install သြင္းခဲ့ရင္ UserName = "root" နဲ႕ Password="" အျဖစ္၀င္သြားမွာပါ ။
အဲဒီိေတာ့အဲဒီကုတ္ေတြကုိ ျပန္ျပင္ရမွာျဖစ္သလို PHPMyadmin ထဲမွာလည္း database တစ္ခုေဆာက္ေပးရမွာျဖစ္ပါတယ္ ။
ကၽြန္ေတာ္ကrain နာမည္နဲ႕ database တစ္ခုေဆာက္ၿပီး ဒီလိုျပန္ျပင္လိုက္ပါတယ္ ။
<?php
// default database
$server = "mysql";
$hostname = "localhost";
$username = "root";
$password = "";
$database = "rain";
if( !defined("DB_PREFIX" ) )
define( "DB_PREFIX", "RAIN_" );
?>
အခု Loaclhost မွာျပန္ေခၚၾကည့္ပါဦး ။ ရပါၿပီ ။ ဒီလိုေပၚေနပါၿပီ ။
သူ႕ရဲ႕ထူးျခားခ်က္က execution time: နဲ႕ memory used: ကုိေဖာ္ျပေပးထားတာျဖစ္ပါတယ္ ။
ျမင္ေနရတဲ့ဆိုက္မွာ charts , content , form , test ဆိုၿပီး Nevigate Menu ေလးခုရွိပါတယ္ ။
Server ထဲျပန္ၾကည့္ၾကည့္မယ္ဆိုရင္ rainframework>app>controllers ထဲမွာလည္း
charts , content , form , test ဆိုတဲ့ folder ေလးခုကုိေတြ႕ရပါလိမ့္မယ္ ။
Controller ထဲက folder ကုိ menu အျဖစ္ျပတာဆိုတာ သတိထားမိပါလိမ့္မယ္။
ဒါကလက္ရွိ Rain Framework အတြက္ပါ။ MVC(Model,View,Controller)အားလံုးအတြက္ေျပာရရင္
Model ဆိုတာ data insert-update စတဲ့အပိုင္းကုိတာ၀န္ယူေပးပါတယ္ ။View က User Interface
ျဖစ္ၿပီး Controller ကေတာ့လိုအပ္သလို ထိမ္းေက်ာင္းေပးတဲ့ ပံုစံမ်ိဳးကုိ ဆိုလိုတာျဖစ္ပါတယ္။
ပထမ charts ဖိုဒါထဲက charts.php ကုိဖြင့္ၾကည့္ရေအာင္ ။
သူ႕ကုတ္ရဲ႕ ပထမဆံုးမွာ -
class Charts_Controller extends Controller{
//Code
} ကုိေတြ႕လိမ့္မယ္။ သူက Controller ဆိုတဲ့ Class ကုိ extends လုပ္ထားတယ္ ။Controller ကေတာ့
System ေအာက္က Library ထဲမွာရွိပါတယ္ ။ အဲဒီထဲမွာ form , function , loader ,rouder စတဲ့
PHP ဖိုင္ေလးေတြလည္းေတြ႕မွာပါ ။System Folder ထဲမွာက Developer မပင္ပန္းေအာင္လို႕ ေျပာင္း
လြယ္ျပင္လြယ္ အသံုးခ်ဖို႕လိုမယ္ထင္သမွ် Class ေတြ Function ေတြ ကုိ Framework တည္ေဆာက္သူက
ကဖန္တီးထည့္သြင္းေပးထားတာပါ ။အဲ့ဒါၿပီးရင္ေတာ့
Function တစ္ခု ေရးပါတယ္ ။ အဲဒီမွာ
$chart_pie = $chart_line = null;
ဆိုၿပီး Variable ႏွစ္ခုေၾကျငာပါတယ္ ။ၿပီးေတာ့
$this->load_library("Charts");
load_library() function က Controller ထဲမွာ ေရးၿပီးသားရွိပါတယ္ ။
သူက library ထဲကေရးၿပီးသား php ဖိုင္ကုိလွမ္းေခၚၿပီး အလုပ္လုုပ္ခိုင္းပါတယ္။
ဘယ္လိုဆိုတာသိခ်င္ရင္ေတာ့ Controller ထဲသြားဖတ္ၾကည့္ပါ ။ ကြန္နက္ရွင္စစ္ထားတာေတြကုိပါ
ေလ့လာၾကည့္လို႕ရပါလိမ့္မယ္ ။ဒါဆို Charts.php ကုိခိုင္းထားၿပီးၿပီလို႕သိရပါမယ္ ။
ထပ္ၾကည့္ရေအာင္ ။
$data = array( array('OSX', 10), array('Win', 3 ), array('Unix', 7 ) );
$this->Charts->set_data($data) ;
set_data() function ကေတာ့ Charts.php ထဲက ျဖစ္ၿပီး array တန္ဖိုးထည့္သြင္းတဲ့အလုပ္လုပ္ေပးပါတယ္။
ဒါက Windows,Mac,Linux အတြက္ value သတ္မွတ္တာ ပါ ။
ေနာက္ထပ္ ေတြ႕ရမွာက
$this->Charts->load_csv( WEBSITE_DIR . "assign_execution_time.csv" ) ;
$chart_line = $this->Charts->draw_line();
အေပၚကဥပမာအတိုင္းပါပဲ ။ Charts.php ထဲက load_csv() ကုိသြားဖတ္ၾကည့္လိုက္ပါ ။က်န္ေနတာက
$tpl = new View;
$tpl->assign( "chart_pie", $chart_pie );
$tpl->assign( "chart_line", $chart_line );
$tpl->draw( "charts/charts" );
ေဖာ္ျပထားတဲ့ Coding ထဲက new View ဆိုတာက
View Class ရွိၿပီးသားမို႕လို႕သာ တစ္ခါတည္း Object ေဆာက္တာလို႕သိရပါမယ္ ။
ဒီေတာ့ဒီမွာျပထားတဲ့ Coding ေတြဟာတစ္ဖိုင္နဲ႕တစ္ဖိုင္ခ်ိတ္ဆက္ထားတာျဖစ္လို႕ အခုမွစေလ့လာမယ့္
သူငယ္ခ်င္းေတြ အတြက္ဘာမွန္းမသိျဖစ္ေစမွာအေသအခ်ာပဲျဖစ္ပါတယ္ ။
ဒါေပမယ့္အခုလိုတစ္ဆင့္ခ်င္းဆီျပန္ေျဖၾကည့္ရင္ တစ္ျဖည္းျဖည္းနားလည္လာပါလိမ့္မယ္ ။
ဒီလိုေရးၿပီးသား Code တစ္ခုကုိ အခ်ိတ္အဆက္မိေအာင္ျပန္ေလ့လာတာကုိ Reverse Engineering လို႕
ေခၚႏိုင္တယ္ဆိုၿပီးစာအုပ္တစ္အုပ္ထဲဖတ္ဖူးပါတယ္ ။အခုရွင္းျပေနတာကလည္း ဒီပိုစ္ကုိဖတ္မိတဲ့ သူငယ္
ခ်င္းေတြ အေနနဲ႕ Self Study Skill တတ္လာေစဖို႕ ထည့္သြင္းရွင္းျပေနတာပါ။
ဆက္ေလ့လာရအာင္
assign နဲ႕ draw ဟာ View.php ထဲမွာ ဖန္တီးၿပီးသား function ေတြလို႕သိရပါမယ္ ။
chart_pie တို႕ chart_line တို႕ ဟာ database ထဲကလာမယ့္ ေဒတာေတြျဖစ္လိမ့္မယ္
ဆိုတာနားလည္ေလာက္ပါတယ္ ။ ေလာေလာဆယ္မွာေတာ့ အဲဒီေဒတာေတြ မရွိေသးဘူးေပါ့ ။
ေနာက္ထပ္
app>views>chats>chats.html မွာသြားၾကည့္ၾကည့္ပါ HTML နဲ႕ေရးထားတဲ့အထဲမွာ
ႀကီးႀကီးမားမားဘာမွမရွိပါဘူး ။PHP စာမ်က္ႏွာကလာမယ့္ chart_pie နဲ႕ chart_line ကုိေနရာခ်ထား
ယံုေလးပဲဆိုတာေတြ႕ရပါလိမ့္မယ္ ။
ဒီေတာ့ Browser ကေန ဒီစာမ်က္ႏွာကို လွမ္းေခၚတဲ့အခါ View folder ထဲက ဒီဇိုင္းအျပင္အဆင္ေတြနဲ႕
Controller ထဲကေန ခိုင္းေစညႊန္ၾကားတဲ့အတိုင္းေဒတာေတြကုိ ထည့္သြင္းေဖာ္ျပေနမွာျဖစ္ပါတယ္။
ေျပာင္းလြယ္ျပင္လြယ္ျဖစ္ေစဖို႕ အခ်က္အလက္ေတြကုိ ဖိုင္ေတြ အမ်ားအျပားခြဲေရးထားၿပီးလိုအပ္သလိုေခၚယူ
အသံုးျပဳသြားတာေတြ႕ရပါလိမ့္မယ္ ။
အခုေတာ့ဒီေလာက္နဲ႕နားပါဦးမယ္ ။
Rain FrameWork ဟာ MVC စနစ္သံုး PHP Framework တစ္ခုျဖစ္ပါတယ္ ။
သူက စြမ္းေဆာင္ရည္ ေကာင္းမြန္သလိုသံုးရတာလည္းလြယ္ပါတယ္ ။
အဓိကကေတာ့ ေပါ့ေပါ့ပါးပါး သံုးႏိုင္တာပါပဲ ။ သူ႕ရဲ႕တည္ေဆာက္ပံုကလည္းရိုးရွင္းလြယ္ကူ
လွပါတယ္ ။ ကၽြန္ေတာ္တို႕အသံုးခ်ရမွာက Loader ရယ္ Controller ရယ္ Views ရယ္
အဲဒီဖိုဒါသံုးခုကုိ ပဲ အသံုးခ်ရမွာပါ ။ ေအာက္ကပံုစံေလးကုိၾကည့္ၾကည့္ပါ ။
Models
^
|
UserInput > Loader -----> Controllers ----->Views
Loader
သူက ဒီ Framework ရဲ႕ အသည္းႏွလံုးလိုပါပဲ ။သူက System folder ထဲဲမွာရွိပါတယ္
* get the input
* include libraries
* init settings
* connect database
* authenticate the user
* load the controller, selected by the user with the URI (es index.php/news/list/)
* draw the output စတ့ဲလုပ္ငန္းစဥ္ေတြ ေခၚသံုးဖို႕ ကုတ္ေတြသူ႕ထဲမွာပါ၀င္ေနသလုိအကူအညီ
ေပးမယ့္ တစ္ျခား ဖိုင္ေတြနဲ႕လည္းခ်ိတ္ဆက္ထားပါတယ္ ။
Controller
သူက ၀န္ထမ္းတစ္ေယာက္နဲ႔ တူပါတယ္ ။Models ထဲကျပန္ယူရမယ့္အခ်က္အလက္ေတြယူတာနဲ႕ Views ထဲ
က Output ေတြ ထုတ္ေပးတာေတြကုိေဆာင္ရြက္ပါတယ္။
Models
သူက Database ထဲက အခ်က္အလက္ေတြ ထုတ္တာသြင္းတာ လုပ္ေပးပါတယ္။
Views
HTML Template ကုိဒီထဲမွာေရးပါတယ္ ။Browser မွာေဖာ္ျပမွာေတြကုိဒီမွာေရးပါတယ္။
ဒီလို ဖိုင္တစ္ခုခ်င္းစီရဲ႕အလုပ္လုပ္ပံုနဲ႕သေဘာသဘာ၀ကုိသိၿပီးၿပီဆိုရင္ က်ဴတိုရီယယ္ေလးတစ္ခုေလာက္စမ္း
ၾကည့္ၾကစို႕ (ဆက္ရန္.....)
ပထမ Rain Framework ကုိဒီကေနေဒါင္းလိုက္ပါ ။ၿပီးေတာ့ Zip ေျဖလိုက္ ။ ဒါဆို ဖိုင္ႏွစ္ဖိုင္ထြက္လာလိမ့္မယ္
_MACOSX ဆိုတဲ့ဖိုင္က Mac အတြက္ ျဖစ္ပါတယ္ ။ Mac သမားမဟုတ္ဘူးဆိုရင္ေတာ့ ဖ်က္ပစ္လိုက္ႏိုင္ပါတယ္ ။
ေနာက္တစ္ဖိုင္ကုိ နာမည္ျပင္ခ်င္ျပင္လို႕ရပါတယ္ ။ၿပီးရင္ေတာ့ Web Server ထဲ သြားထားလိုက္ပါေတာ့ ။
ၿပီးရင္ Server ကုိ Run ၿပီး Browser ကေန Localhost/rainframework ကုိလွမ္းေခၚၾကည့္ ။
Error Message ကုိေတြ႕ပါလိမ့္မယ္ ။Error မွာ Server=Loaclhost ,User=root ,Password= သံုးမယ္
ဆိုတာေလးကုိ ေတြ႕ရပါလိမ့္မယ္ ။ ဒါဆိုရင္ သူ႕Server Setting က ကုိယ့္Server Setting နဲ႕ မကုိက္လို႕ျဖစ္တယ္ဆိုတာ
ခန္႕မွန္းလို႕ရေလာက္ပါတယ္ ။Wamp သမားဆိုရင္ေတာ့ WWW ထဲ Xampp သမားဆိုရင္ေတာ့ htdocs ထဲ သြား
ၿပီး rainframework>config >db.php ကုိ Notepad ++ နဲ႕ဖြင့္ၾကည့္လိုက္ပါ ။
သူ႕ကုတ္က ေအာက္ကအတိုင္းပါ ။
<?php
// default database
$server = "mysql";
$hostname = "localhost";
$username = "root";
$password = "root";
$database = "rainframework2";
if( !defined("DB_PREFIX" ) )
define( "DB_PREFIX", "RAIN_" );
?>
ကၽြန္ေတာ္တို႕ Server ကုိ Default အတိုင္း Install သြင္းခဲ့ရင္ UserName = "root" နဲ႕ Password="" အျဖစ္၀င္သြားမွာပါ ။
အဲဒီိေတာ့အဲဒီကုတ္ေတြကုိ ျပန္ျပင္ရမွာျဖစ္သလို PHPMyadmin ထဲမွာလည္း database တစ္ခုေဆာက္ေပးရမွာျဖစ္ပါတယ္ ။
ကၽြန္ေတာ္ကrain နာမည္နဲ႕ database တစ္ခုေဆာက္ၿပီး ဒီလိုျပန္ျပင္လိုက္ပါတယ္ ။
<?php
// default database
$server = "mysql";
$hostname = "localhost";
$username = "root";
$password = "";
$database = "rain";
if( !defined("DB_PREFIX" ) )
define( "DB_PREFIX", "RAIN_" );
?>
အခု Loaclhost မွာျပန္ေခၚၾကည့္ပါဦး ။ ရပါၿပီ ။ ဒီလိုေပၚေနပါၿပီ ။
သူ႕ရဲ႕ထူးျခားခ်က္က execution time: နဲ႕ memory used: ကုိေဖာ္ျပေပးထားတာျဖစ္ပါတယ္ ။
ျမင္ေနရတဲ့ဆိုက္မွာ charts , content , form , test ဆိုၿပီး Nevigate Menu ေလးခုရွိပါတယ္ ။
Server ထဲျပန္ၾကည့္ၾကည့္မယ္ဆိုရင္ rainframework>app>controllers ထဲမွာလည္း
charts , content , form , test ဆိုတဲ့ folder ေလးခုကုိေတြ႕ရပါလိမ့္မယ္ ။
Controller ထဲက folder ကုိ menu အျဖစ္ျပတာဆိုတာ သတိထားမိပါလိမ့္မယ္။
ဒါကလက္ရွိ Rain Framework အတြက္ပါ။ MVC(Model,View,Controller)အားလံုးအတြက္ေျပာရရင္
Model ဆိုတာ data insert-update စတဲ့အပိုင္းကုိတာ၀န္ယူေပးပါတယ္ ။View က User Interface
ျဖစ္ၿပီး Controller ကေတာ့လိုအပ္သလို ထိမ္းေက်ာင္းေပးတဲ့ ပံုစံမ်ိဳးကုိ ဆိုလိုတာျဖစ္ပါတယ္။
ပထမ charts ဖိုဒါထဲက charts.php ကုိဖြင့္ၾကည့္ရေအာင္ ။
သူ႕ကုတ္ရဲ႕ ပထမဆံုးမွာ -
class Charts_Controller extends Controller{
//Code
} ကုိေတြ႕လိမ့္မယ္။ သူက Controller ဆိုတဲ့ Class ကုိ extends လုပ္ထားတယ္ ။Controller ကေတာ့
System ေအာက္က Library ထဲမွာရွိပါတယ္ ။ အဲဒီထဲမွာ form , function , loader ,rouder စတဲ့
PHP ဖိုင္ေလးေတြလည္းေတြ႕မွာပါ ။System Folder ထဲမွာက Developer မပင္ပန္းေအာင္လို႕ ေျပာင္း
လြယ္ျပင္လြယ္ အသံုးခ်ဖို႕လိုမယ္ထင္သမွ် Class ေတြ Function ေတြ ကုိ Framework တည္ေဆာက္သူက
ကဖန္တီးထည့္သြင္းေပးထားတာပါ ။အဲ့ဒါၿပီးရင္ေတာ့
Function တစ္ခု ေရးပါတယ္ ။ အဲဒီမွာ
$chart_pie = $chart_line = null;
ဆိုၿပီး Variable ႏွစ္ခုေၾကျငာပါတယ္ ။ၿပီးေတာ့
$this->load_library("Charts");
load_library() function က Controller ထဲမွာ ေရးၿပီးသားရွိပါတယ္ ။
သူက library ထဲကေရးၿပီးသား php ဖိုင္ကုိလွမ္းေခၚၿပီး အလုပ္လုုပ္ခိုင္းပါတယ္။
ဘယ္လိုဆိုတာသိခ်င္ရင္ေတာ့ Controller ထဲသြားဖတ္ၾကည့္ပါ ။ ကြန္နက္ရွင္စစ္ထားတာေတြကုိပါ
ေလ့လာၾကည့္လို႕ရပါလိမ့္မယ္ ။ဒါဆို Charts.php ကုိခိုင္းထားၿပီးၿပီလို႕သိရပါမယ္ ။
ထပ္ၾကည့္ရေအာင္ ။
$data = array( array('OSX', 10), array('Win', 3 ), array('Unix', 7 ) );
$this->Charts->set_data($data) ;
set_data() function ကေတာ့ Charts.php ထဲက ျဖစ္ၿပီး array တန္ဖိုးထည့္သြင္းတဲ့အလုပ္လုပ္ေပးပါတယ္။
ဒါက Windows,Mac,Linux အတြက္ value သတ္မွတ္တာ ပါ ။
ေနာက္ထပ္ ေတြ႕ရမွာက
$this->Charts->load_csv( WEBSITE_DIR . "assign_execution_time.csv" ) ;
$chart_line = $this->Charts->draw_line();
အေပၚကဥပမာအတိုင္းပါပဲ ။ Charts.php ထဲက load_csv() ကုိသြားဖတ္ၾကည့္လိုက္ပါ ။က်န္ေနတာက
$tpl = new View;
$tpl->assign( "chart_pie", $chart_pie );
$tpl->assign( "chart_line", $chart_line );
$tpl->draw( "charts/charts" );
ေဖာ္ျပထားတဲ့ Coding ထဲက new View ဆိုတာက
View Class ရွိၿပီးသားမို႕လို႕သာ တစ္ခါတည္း Object ေဆာက္တာလို႕သိရပါမယ္ ။
ဒီေတာ့ဒီမွာျပထားတဲ့ Coding ေတြဟာတစ္ဖိုင္နဲ႕တစ္ဖိုင္ခ်ိတ္ဆက္ထားတာျဖစ္လို႕ အခုမွစေလ့လာမယ့္
သူငယ္ခ်င္းေတြ အတြက္ဘာမွန္းမသိျဖစ္ေစမွာအေသအခ်ာပဲျဖစ္ပါတယ္ ။
ဒါေပမယ့္အခုလိုတစ္ဆင့္ခ်င္းဆီျပန္ေျဖၾကည့္ရင္ တစ္ျဖည္းျဖည္းနားလည္လာပါလိမ့္မယ္ ။
ဒီလိုေရးၿပီးသား Code တစ္ခုကုိ အခ်ိတ္အဆက္မိေအာင္ျပန္ေလ့လာတာကုိ Reverse Engineering လို႕
ေခၚႏိုင္တယ္ဆိုၿပီးစာအုပ္တစ္အုပ္ထဲဖတ္ဖူးပါတယ္ ။အခုရွင္းျပေနတာကလည္း ဒီပိုစ္ကုိဖတ္မိတဲ့ သူငယ္
ခ်င္းေတြ အေနနဲ႕ Self Study Skill တတ္လာေစဖို႕ ထည့္သြင္းရွင္းျပေနတာပါ။
ဆက္ေလ့လာရအာင္
assign နဲ႕ draw ဟာ View.php ထဲမွာ ဖန္တီးၿပီးသား function ေတြလို႕သိရပါမယ္ ။
chart_pie တို႕ chart_line တို႕ ဟာ database ထဲကလာမယ့္ ေဒတာေတြျဖစ္လိမ့္မယ္
ဆိုတာနားလည္ေလာက္ပါတယ္ ။ ေလာေလာဆယ္မွာေတာ့ အဲဒီေဒတာေတြ မရွိေသးဘူးေပါ့ ။
ေနာက္ထပ္
app>views>chats>chats.html မွာသြားၾကည့္ၾကည့္ပါ HTML နဲ႕ေရးထားတဲ့အထဲမွာ
ႀကီးႀကီးမားမားဘာမွမရွိပါဘူး ။PHP စာမ်က္ႏွာကလာမယ့္ chart_pie နဲ႕ chart_line ကုိေနရာခ်ထား
ယံုေလးပဲဆိုတာေတြ႕ရပါလိမ့္မယ္ ။
ဒီေတာ့ Browser ကေန ဒီစာမ်က္ႏွာကို လွမ္းေခၚတဲ့အခါ View folder ထဲက ဒီဇိုင္းအျပင္အဆင္ေတြနဲ႕
Controller ထဲကေန ခိုင္းေစညႊန္ၾကားတဲ့အတိုင္းေဒတာေတြကုိ ထည့္သြင္းေဖာ္ျပေနမွာျဖစ္ပါတယ္။
ေျပာင္းလြယ္ျပင္လြယ္ျဖစ္ေစဖို႕ အခ်က္အလက္ေတြကုိ ဖိုင္ေတြ အမ်ားအျပားခြဲေရးထားၿပီးလိုအပ္သလိုေခၚယူ
အသံုးျပဳသြားတာေတြ႕ရပါလိမ့္မယ္ ။
အခုေတာ့ဒီေလာက္နဲ႕နားပါဦးမယ္ ။
Posted by aung aung. Posted In : Web-technology


Web နည္းပညာကုိ ေလ့လာလိုက္စားသူ
Freelance Developer တစ္ဦး ။
စိတ္ပါလွ်င္ကဗ်ာေတြစာေတြလည္းေရးတတ္သူ။