Tuesday, June 21, 2011

PHP හැදින්වීම - දෙවන කොටස


වැඩ ටිකක් තිබුන නිසා PHP ගැන ලියන්න පටන්ගත්තට ඒක ලියන්න බැරි වුනා. ඔන්න අද ඒ ලිපි පෙලේ දෙවනි ලිපිය ලියන්න තමයි හදන්නෙ. පළමු ලිපිය කියවන්න බැරි වුනානම් මෙතනින් ගිහින් කියවල බලන්නකො. අද මට හිතුන PHP Variables ගැන ටිකක් කථාකරන්න.

සාමාන්‍යයෙන් ඔනෑම පරිගනක භාෂාවක් භාවිතා කරල program එකක් ලියනකොට අපි මේ Variables යොදාගන්නව. මොකටද මේ variables භාවිතා කරන්නෙ. සරලවම කියනව නම් අපේ Program එක තුල භාවිතා වෙන Data සහ information තාවකාලිකව ගබඩාකරගන්න තමයි මේ Variables කියන දේ යොදාගන්නෙ. එ කියන්නෙ User ගෙන් ගත්ත input එකක් තාවකාලිකව තබාගන්න වගේම, අපි calculate කරල ගත්ත අවසන් උත්තරයක් Output කරනකන් තියාගන්නත් මේ Variable යොදාගන්නව. ඈත්තටම මේ Variable එකක් කියන්නෙ Memory Location එකක් Allocate කිරීමක්. අපි variable එකක් හැදුවාම අපේ ram එකෙන් කොටසක් ඒ සදහා වෙන්වෙනව.දැන් බලමු මොනවද මේ Variable එකක තියන දේවල් කියල. Variable එකක ප්‍රධාන properties 3ක් තියනව.

  • Variable Name - එ කියන්නෙ අපේ Variable එක හදුන්වන නම
  • Variable Type - අපේ Variable එකේ තියාගන්න පුළුවන් මොන විදියෙ Dataද කියන එක. (Integer, Read, Boolean, Char ...)
  • Value - ඒ කියන්නෙ අපේ variable එකේ අගය.

උදාහරණයක් විදියට අපි හිතමු int age = 23; කියන statement එක. මෙතන කියන්නෙ age කියන නමින් variable එකක් හදන්න. ඒකෙ type එක Integers ඒ කියන්නෙ පූර්ණ සංඛ්‍යා විතරයි එයාට දාන්න පුළුවන්. ආරම්භක අගය 23යි. හැබැයි PHP Variables මේ සම්මත තත්වයෙන් ටිකක් වෙනස් වෙලා තියනව. PHP is a Loosely Typed Language ඒ කියන්නෙ අපි Variable එ

කක් භාවිතා කරන්න කලින් ඒක හදන්න ඕනෙම නෑ. ඒ වගේමයි අපි variable එකේ type එකක් සදහන් කරන්න ඕනෙත් නෑ. නියමයි නේද??? උදාහරණයක් විදියට $age = 23; කියන satement එකේන වෙන්නෙ age කියන ඩ්රස්ඉකැ එකට 23 ආදේෂ වෙන එක. බලන්න මෙතන අපි කියල නෑ age කියන variable එක මොන type එකේද කියල. අපි දෙන අගය අනුව PHP වලට පුළුවන් Automatically මේ variable එකේ data type එක මාරුකරගන්න. හරිම ලේසියි නේද???

තවත් වැදගත් දෙයක් තමයි PHP variable එකක් අනිවාර්යයෙන්ව පටන් ගන්න ඔනේ $ සලකුනෙන්. ඒට පස්සෙ මුලින්ම තියෙන්න ඔනෙ අකුරක් හෝ _ (Underscore) එකක්. variable එකේ නමට spaces යොදාගන්නත් බෑ. අපිට space එකක් යොදාගන්න ඔනෙ නම් ඒ වෙනුවට _ එක භාවිතා කරන්න පුළුවන්. ඒ කියන්නෙ $my name = "Keshan"; කියල ලිවුවොත් වැරදියි. ඒක $my_name = "Keshan"; හෝ $myName = "Keshan"; කියල නිවරදි වෙන්න ඔනේ.

ඔය කිවුවෙ PHP Variable හදනකොට තියන නීති ටික. මීට අමතරව ඔනෑම Programing Language එකකින් Variable එකක් හදනකොට අපි අනුගමනය කරන රීති ටිකක් තියනව. ඒවට අපි රීති කියන්නෙ ඒව අනුගමනය කරේ නැති වුනත් අපේ Program එක වැඩ කරනව. ඒත් මේ රීති අනුගමනය කරාම අපේ Program එකේ Quality එක වැඩි වෙනව. මෙන්න මේව තමයි ඒ රීති.

  • Variable එකේ නම විදියට ඒකෙන් කෙරෙන දේ විස්තර වෙන නමක් දෙන්න (උදා $userName ) එත කොට මේ Program එක බලන කෙනාට තේරෙනව මේ variable එක මොකටද තියෙන්​නෙ කියල
  • Variable එකේ නම ගොඩක් දිග එකක් දෙන්න එපා
  • Variable එකේ නම විදියට පුළුවන් හැම වෙලාවකම නාම පදයක් යොදා ගන්න.
  • Variable එකේ නම වචන කිහිපයක එකක් නම් camelCase එක ගොදායන්න. ඒ කියන්නෙ මුල් වචනෙ මුල් අකුර Simple ඊට පස්සෙ හම්බවෙන හැම වචනකෙම මුල අකුර Capital (උදා $imageLocation )
  • Variable එක boolean type එකක් නම් ඒකියන්නෙ True or False එකක් නම් 'is' කියන prefix එකෙන් variable එක පටන් ගන්න (උදා $isMale; $isError)

හරි ඊලගට PHP Operators ගැන කියන්නම්. ඈත්තම කිවුවොත් ඒ ගැන එච්චර කියන්න දෙයක් නෑ. මොකද අනිත් හැම භාෂාවකම තියන ඒවම තමයි මේකෙත් තියෙන්නෙ.

හැමෝම දන්නවනෙ + - * / % ++ -- කියන ප්රධාන Operators ටික PHP වලත් තියනව. මේවයින් කරන දේවල් දන්නව කියල මම හිතනම. + එකතු කිරීම, - අඩු කිරීම, * වැඩි කිරීම, / බෙදීම, % මේක Modulo Operator එක. මේකෙන් වෙන්න අපි දෙන අගය අනිත් අගයෙ

න් බෙදුවාම ඉතුරු වෙන අගය දෙනව. ++ -- කියන දෙකෙන් වෙන්නෙ අපි දෙන Variable එකේ අගය එකකින් වැඩි වෙන එක හා අඩුවෙන එක්. මේ උදාහරන ටික බලන්නකො.

$numberOne = 10;

$numberTwo = 3;

$add = $numberOne + $numberTwo;

$sub = $numberOne - $numberTwo;

$mul = $numberOne * $numberTwo;

$div = $numberOne / $numberTwo;

$rem = $numberOne % $numberTwo;

මීට අමතරව Assignment Operators කියල කිහිපයක් තියනව. ඒවත් අනිත් Language වල යොදාගන්න විදියම තමයි. මේ තියෙන්නෙ ටික.

  • x = x + y; කියන statement එක X += y කියල ලියන්න පුළුවන්
  • x = x - y; කියන statement එක X -= y කියල ලියන්න පුළුවන්
  • x = x * y; කියන statement එක X *= y කියල ලියන්න පුළුවන්
  • x = x / y; කියන statement එක X /= y කියල ලියන්න පුළුවන්
  • x = x % y; කියන statement එක X %= y කියල ලියන්න පුළුවන්

මම හිතනව ගොඩක් අයට මේ දේවල්නම් අළුත් දේවල් නෙමේ කියල. Variable ගැන දැනගන්න තියන මූලික දේවල් ටික ඔච්චරයි. දැන් අපි බලමු PHP වල තියන වැදගත්ම හා විශාල විදියට යොදාගන්නා දෙයක් ගැන. තමයි echo සහ print. ඇත්තටම මේ දෙකම යොදාගන්නෙ අපිට ඔන කරන දෙයක් Screen එකේ Print කරගන්න.

print "Hello World! ";

echo "Hello World!";

ඔය දෙකෙන්ම වෙන්නෙ Hello World! කියන එක print වෙන එක. PHP වල තියන ලස්සනම දෙයත් තමයි අපිට print හෝ echo ඈතුලෙ HTML Tag ලියන්න පුළුවන්. එතකොට Tag එක print වෙන්නෙ නෑ. වෙනුවට tag එකට අදාල දේ පෙන්නනව. ඒකත් ටිකක් උත්සහ කරල බලන්නකො...

හරි ඊලගට ගොඩක් අය හිතනව මේ command දෙකම එක හා සමානයි කියල. ඇත්තටම මේ දෙකම එකම දේ කරාට දෙන්නගෙ පොඩි පොඩි වෙනස්කම් තියනව.

පළවෙනි දේ තමයි echo වලට පුළුවන් argument කිහිපයක් ලභා ගන්න. ඒත් print වලට පුළුවන් එක argument එකක් විතරයි.

echo "Hello" , "world";

print "Hello" . "World";

දෙවනි කාරනය තමයි print function එක execute වෙලා ඉවර උනාම ඒක value එකක් return කරනව. නමුත් echo වල විදිය දෙයක් නෑ.

$retValue = print "Hello World!\n";

මේ Print Statement එක නිවරදිව execute වුනොත් $retValue කියන variable එකේ අගය 1ක් වෙනව. අපිට අගයෙන් පුළුවන් print statement එක හරියටම වැඩ කරාද කියල බලාගන්න. නමුත් echo වල විදිය පහසු කමක් නෑ. අනිත් කාරනය තමයි මෙන්න මේ return value case එක නිසා print command එක echo command එකට වඩැ ටිකක් විතර slow වැඩ කරන්නනෙ. හැබැයි ඒක අපිට දැන තරමි slow වීමක් නම් නෙමෙයි.

අපිට print command එක යොදාගෙන අගයන් කිහිපයක් display කරන්න ඕනෙ නම් අපිට .(dot) Operator එක යොදාගන්න පුළුවන්.

ඔන්න මම අද දවසෙ කියපු දේවල් ටික එකතු කරල පොඩි PHP Page එකක් හැදුව. ඔයාලත් ඒක try කරල බලන්න.

Download Code

අදට ඉවරයි... ඊලග ලිපියෙන් මම if-else switch and loops ගැන

කථාකරන්න බලා පොරෝත්තු වෙනව. මොකද මට ඔනේ මේ මූලික දේවල් ඉක්මනය ඉවර කරන්න. මේව ගොඩක් අය දන්නව. එතකොට අපිට පුළුවන් Data Base ගැන ටිකක් වැඩිපුර කතා කරන්න. ඔබගේ අදහස් වගේම මේ ලිපියෙ මොනව හරි වැරැද්දක් තියනවනම් ඒවත් පහලින් ලියලම යන්න.....

3 comments:

  1. ජීවන්තJune 21, 2011 at 1:34 PM

    එල කෙශන් දිගටම ලියන්න........

    ReplyDelete
  2. බොහොම ස්තුතියි මචෝ JavaScript එකත් වෙලාව තියනවනම් දාපන් :f

    ReplyDelete

ටිකක් ඡනප්‍රිය ඒව