ඉතින් යාලුවනේ කොහොමද ඔන්න අදත් මම ඔයාලට තවත් අලුත් php පාඩමක් අරගෙන අවා ටිකක් පරක්කු උනාට සමාවෙන්න ඕනේ මේ තියන වැඩ ගොඩ අස්සේ අද යන්තම් ඔයාල වෙනුවෙන් පොස්ටුවක් ලියන්න වෙලාවක් හොයාගත්තා. අද මම ඔයාලට කියල දෙන්න යන්නේ php වල තියන Global Variables - Superglobals කියන ඒවා ගැන පොඩි විස්තරයක් :D මේ Global Variables - Superglobals කියන එක මුලින් ම හදුන්වල දුන්නේ PHP 4.1.0 කියන සංස්කරණය යටතේයි. අපි දැන් use කරන්නේ php 5 සංස්කරණය නිසා මේ සියල්ලම එකෙත් ඇතුලත් වෙනවා. මේවා php වල predefined variables මේවා ඔයාලට කැමති තැනක ඉදල access කරන්න පුළුවන් class එකක function එකක ඕනේ තැනක ඉදල access කරන්න පුළුවන් එක නිසා තමයි මේවට Superglobals කියල කියන්නේ.
අපි බලමු දැන් එහෙනම් php වල තියන Global Variables මොනවද කියල,
- $GLOBALS
- $_SERVER
- $_REQUEST
- $_POST
- $_GET
- $_FILES
- $_ENV
- $_COOKIE
- $_SESSION
මම මෙතැනදි ඔයාලට කියල දෙනවා
- $GLOBALS
- $_SERVER
- $_REQUEST
- $_POST
- $_GET
කියන ටික ඉතුරු ටික අපි ඉස්සරහට එන lessons වලදී බලමු.
මුලින් ම බලමු එහෙනම් $GLOBALS කියන එක ගැන,
$GLOBALS කියල කියන්නේ php වල තියන super global එකක් මේක අපිට ඕනෙම තැනක ඉදල access කරන්න පුළුවන් functions or methods එකක ඉදල උනත් අපිට access කරන්න පුළුවන්
php වල මේ global variable store කරගන්නේ $GLOBALS[index] කියන Array එකේ. මේකේ index කියල කියන්නේ variable name එක.
<!DOCTYPE html>
<html>
<body>
<?php
$x = 80;
$y = 20;
function addition() {
$GLOBALS ['z'] = $GLOBALS ['x'] + $GLOBALS ['y'];
}
addition ();
echo $z;
?>
</body>
</html>
මේකේ result එක විදියට එන්නේ
100 කියල
අපි බලමු එහෙනම් ඊළගට $_SERVER කියන එක ගැන,
මේකෙන් කරන්නේ php වල paths, script locations, headers වල information තියාගෙන ඉන්න එකයි.
<!DOCTYPE html>
<html>
<body>
<?php
echo $_SERVER ['SERVER_NAME'];
echo "<br>";
echo $_SERVER ['HTTP_HOST'];
?>
</body>
</html>
මේකේ result එක මටනම් අවේ
localhost
localhost
$_SERVER කියන එක ගත්තහම එකේ elements ගොඩක් තියනවා එහෙනම් බලාගන්නකෝ ඒ මොනවද කියලා
දැන් එහෙනම් බලමු $_request කියන එක ගැන,
මේක use කරන්නේ form එකකින් data collect කරගන්න තමයි.
අපිට මේවත් ඉස්සරහට හම්බෙනවා එක නිසා බයවෙන්න දෙයක් නෑ.
<!DOCTYPE html>
<html>
<body>
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
Name: <input type="text" name="fname"> <input type="submit">
</form>
<?php
if ($_SERVER ["REQUEST_METHOD"] == "POST") {
$name = $_REQUEST ['fname'];
if (empty ( $name )) {
echo "Name is empty";
} else {
echo $name;
}
}
?>
</body>
</html>
මේකේ එන box එකේ ඔයාලට කැමති නමක් ගහල submit කරහම ඔයාලට එක පහලින් view කරනවා මෙතැනදී වෙන්නේ අපේ request එක print කරලා පෙන්නන එකයි.
එහෙනම් අපි දැන් බලමු $_POST එක ගැන ,
මේක use කරන්නේ html form එකක් submit කරනකොට data collect කරගන්න මේ method එකේ විශේෂත්වය තමයි අපි form එක submit කරනකොට url එකේ අපි pass කරන values පෙන්නන්නේ නැතුව යවන එකයි.
<!DOCTYPE html>
<html>
<body>
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
Name: <input type="text" name="fname"> <input type="submit">
</form>
<?php
if ($_SERVER ["REQUEST_METHOD"] == "POST") {
$name = $_POST ['fname'];
if (empty ( $name )) {
echo "Name is empty";
} else {
echo $name;
}
}
?>
</body>
</html>
මේකේ එන box එකේ ඔයාලට කැමති නමක් ගහල submit කරහම ඔයාලට එක පහලින් view කරනවා මෙතැනදී වෙන්නේ අපේ request එක print කරලා පෙන්නන එකයි. මේකෙදි අපිට URL එකේ පෙන්නන්නේ න අපි මොනාද pass කරන්නේ කියල.
එහෙනම් අපි දැන් බලමු $_GET එක ගැන ,
මේක use කරන්නේ html form එකක් submit කරනකොට data collect කරගන්න මේ method එකේ විශේෂත්වය තමයි අපි form එක submit කරනකොට url එකේ අපි pass කරන values පෙන්නනවා.
<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="GET">
Name: <input type="text" name="name">
<input type="submit" value="Submit">
</form>
මේකෙදි ඔයාලට බලාගන්න පුළුවන් කැමති name එකක් ගහල submit කරහම ඒ අපි ගහපු name එකේ value එක අපේ URL එකේ display කරනවා
අපි මේ දේවල් ගැන තවත් ඉස්සරහට වැඩිපුර කතා කරනවා එක නිසා බයවෙන්නෙපා. හික් හික් ;)
එහෙනම් ඉතින් අදට මට යන්න වෙලාව හරි අද අපි මේ කරපු දේවල් ටික කස්ටිය හොදට කරලා පුරුදුවෙන්න
එහෙනම් ඉතින් මන්ගොහින් එන්නම් අයත් අලුත් පාඩමක් අරගෙන එනකම් හැමෝටම ජයවේවා!!!
මතකඇතුව යාලුවනේ කොමෙන්ටුවකුත් දාලම යන්න හොදේ :D
No comments:
Post a Comment