கூட்டல், கழித்தல், பெருக்கல், வகுத்தல்... இவைகளை Operators என அழைக்கப்படுகிறது.
PHP களில் ஐந்துவிதமான OPERATORS பயன்படுத்தப்படுகிறது.
<?php
$a = 4 + 2; // Ans: 6 // addition
$b = 4 - 2; // Ans: 2 // subtraction
$c = 4 * 2; // Ans: 8 // multiplication
$d = 4 / 2; // Ans: 2 // division
$e = 4 % 2; // Ans: 0 // modulus (division remainder)
?>
Value நான்கானது $f variable -க்கு கொடுக்கப்படுகிறது.
<?php
$f = 4; // assignment
?>
$x-ன் VALUE 8 என்றால்...
<?php
$X=8;
$x += 4; // $x = $x+4;
echo "X value is: ".$x;
?>
<?php
$X=8;
$x -= 4; // $x = $x-4;
echo "X value is: ".$x;
?>
<?php
$X=8;
$x *= 4; // $x = $x*4;
echo "X value is: ".$x;
?>
<?php
$X=8;
$x /= 4; // $x = $x/4;
echo "X value is: ".$x;
?>
<?php
$X=8;
$x++; // $x = $x+1;
echo "X value is: ".$x;
?>
Variable -க்கு பக்கத்தில் இரண்டு சமக்குறி (++) இட்டால் அந்த Variable -ல் உள்ள Value உடன் +1 சேர்க்கப்படும். இதில் echo $x++; என்று எழுதினால் அதன் Output print 8 ஆகத்தான் காட்டும் ஆனால் அந்த Value உடன் ஒன்று கூட்டலாகிருக்கும். அதாவது 8 ஐ print செய்துவிட்டு 1 கூட்டலாகும். echo ++$x என்று எழுதினால் அதன் விடை $x ல் உள்ள VALUE உடன் ஒன்று கூட்டலாகி 9 என கொடுக்கும்.
<?php
$X=8;
$x--; // $x = $x-1;
echo "X value is: ".$x;
?>
Variable -க்கு பக்கத்தில் இரண்டு சமக்குறி (--) இட்டால் அந்த Variable -ல் உள்ள Value உடன் -1 கழிக்கப்படும். இதில் echo $x--; என்று எழுதினால் அதன் Output print 8 ஆகத்தான் காட்டும் ஆனால் அந்த Value உடன் ஒன்று கழித்தலாகிருக்கும். அதாவது 8 ஐ print செய்துவிட்டு 1 கழிக்கப்படும். echo ++$x என்று எழுதினால் அதன் விடை $x ல் உள்ள VALUE உடன் ஒன்று கழித்தளாகி 7 என கொடுக்கும்.
<?php
$X=8; $Z=8;
$Y=$X++ // $y ன் VALUE 8 ஆக இருக்கும். $X ன் VALUE 9 ஆக இருக்கும்.
$Y=++$z; // $y ன் VALUE 9 ஆக இருக்கும். $z ன் VALUE 9 ஆக இருக்கும்.
?>
இரண்டு VALUES களை ஒப்பிட்டு சரிசமமாக உள்ளனவா இல்லையா என்பதை கண்டறியலாம். இதனுடைய RETURN VALUE ஆனது TRUE OR FALSE ஆகும்.
$x = (2 == 3); // false
<?php
$a = 2; $b =3;
$x = ($a == $b);
echo $x;
?>
ஒரு சமக்குறி (=) இட்டால் $b ன் VALUE $a விற்கு ASSIGN ஆகும். இரண்டு சமக்குறி (==) இட்டால் இரண்டும் சமமா என்ற கேள்வியை எழுப்பும்.
$x = ($a != $b); // true
<?php
$a = 2; $b =3;
$x = ($a != $b);
echo $x;
?>
!= என்று குறிப்பிடும்போது இவ்விரண்டும் சமமாக இல்லையா என்ற கேள்வியை எழுப்பும் (ஆம் சமம் இல்லை). சமமாக இல்லை என்றால் TRUE என்று கொடுக்கும். $a and $b Value சமமாக இருந்தால் அதனுடைய Return Value ஆனது FALSE ஆக இருக்கும்.
$x = (2 <> 3); // true // not equal to (alternative)
<?php
$a = 2; $b = 3;
$x = ($a <> $b);
echo $x;
?>
$x = (TRUE === FALSE); // false
<?php
$a = (2 <> 3); // TRUE
$b= (2 <> 2); // FALSE
$c = (2 != 3); //TRUE
$d = (3 != 3); //FALSE
$x = ($a === $b);
echo $x; // FALSE
echo ($a === $c) // TRUE
?>
பொதுவாக TRUE OR FALSE VALUE களை சரிபார்க்க உதவுகிறது. காரணம் என்னவென்றால் இந்த மூன்று சமக்குறிகளுக்கு இடது பக்கமும் வலது பக்கமும் ஒரே DATATYPE கொண்டு இருக்க வேண்டும்.
<?php
$x = (10 == "10"); // TRUE
$x = (10 === "10"); // FALSE
?>
$x = (TRUE !== FALSE); // true
<?php
$a = (2 <> 3); // TRUE
$b = (2 <> 2); // FALSE
$c = (2 != 3); //TRUE
$x = ($a !== $b); // TRUE !== FALSE
echo $x; // TRUE
$z = ($a !== $c) // TRUE !== TRUE
echo $z; //TRUE !== FALSE FALSE
?>
வலதுபுறமுள்ளதை விட இடது பெரியதா என கண்டறிய (>) பயன்படுத்தப்படுகிறது.
<?php
$x = (2 > 3); // false
?>
வலதுபுறமுள்ளதை விட இடது சிறியதா என கண்டறிய (<) பயன்படுத்தப்படுகிறது.
<?php
$x = (2 < 3); // true
?>
வலதுபுறத்திற்கு சமமாகவோ அல்லது அதைவிட பெரியதாகவோ இருக்கிறதா என கண்டறிய (>=) பயன்படுத்தப்படுகிறது.
<?php
$x = (2 >= 3); // false
?>
வலதுபுறத்திற்கு சமமாகவோ அல்லது அதைவிட சிறியதாகவோ இருக்கிறதா என கண்டறிய (<=) பயன்படுத்தப்படுகிறது.
<?php
$x = (2 <= 3); // true
?>
இந்த OPERATOR பயன்படுத்துவதற்கான காரணம் என்னவென்றால் இதனுடைய RETURN VALUE வைத்து எது பெரியது என காணாலாம்.
<?php
$y = 1 <=> 1; // Return Value 0 (1 == 1)
$y = 1 <=> 2; // Return Value -1 (1 < 2)
$y = 3 <=> 2; // Return Value 1 (3 > 2)
?>
Spaceship Operator உடைய இடது வலது VALUE சமமாக இருப்பின் அதன் RETURN VALUE ஆனது 0 ஆக இருக்கும்.
வலது VALUE பெரிய எண்ணாக இருப்பின் அதன் RETURN VALUE ஆனது -1 ஆக இருக்கும்.
இடது VALUE பெரிய எண்ணாக இருப்பின் அதன் RETURN VALUE ஆனது 1 ஆக இருக்கும்.
இந்த லாஜிகல் ஆபரேட்டர்கள் பெரும்பாலும் TRUE OR FALSE களை சரிபார்க்க பயன்படுத்தப்படுகிறது.
<?php
$z = (TRUE && FALSE); // false // logical and
$z = (TRUE || FALSE); // true // logical or
$z = !(TRUE); // false // logical not
$z = (10>8) && (5<3
); // false
?>