TOC

This article is currently in the process of being translated into Mongolian (~54% done).

Өгөгдлийн төрлүүд:

Тоотой ажиллах

Энэ бүлэгт бид зарим тоонуудтай ажиллах болно. Өмнөх бүлэгт дурьдсанчлан, PHP нь тоонуудтай холбоотой хоёр өөр өгөгдлийн төрөлтэй байдаг : Бүхэл тоо ба бутархай. Integer нь бүхэл тоонууд бөгөөд аравтын бутархайгүй, харин float нь үргэлж бутархай хэсгийг агуулдаг. Ихэнх тохиолдолд бүхэл тоонууд хэрэглэдэг бөгөөд тэдэнтэй ажиллахад илүү хурдан бөгөөд хялбар байдаг.

PHP-ээр тооцоолол хийх нь хичнээн хялбар болохыг харуулахын тулд хэдэн энгийн тооцоог туршиж үзье. Энд хэдэн жишээ байна.

<?php
$number1 = 6;
$number2 = 2;

echo "Addition: " . ($number1 + $number2);
echo "<br /><br />";
echo "Substraction: " . ($number1 - $number2);
echo "<br /><br />";
echo "Multiplication: " . ($number1 * $number2);
echo "<br /><br />";
echo "Division: " . ($number1 / $number2);
echo "<br /><br />";
?>

Энэ бол энгийн зүйл! PHP-тэй тоо бодох нь энгийн тооцоолуур ашиглахтай адилхан харагдаж байна. Гэхдээ гаднаас ирсэн тоонууд, жишээлбэл. вэб хуудасны form - оос илгээдсэн бол яах вэ? Үүнийг бид дараачийн бүлэгт оруулах болно, мөн бидний ашиглах аргуудын нэг нь хувьсагч бидний тооцоолоход ашиглаж болох утгыг агуулж байгаа эсэхийг шалгах явдал юм . Is_numberic () функц үүнд туслах болно. Энэ нь хувьсагч бүхэл тоо мөн үү, эсвэл түүнийг нэг болгож хөрвүүлэх боломжтой эсэхийг шалгана. Жишээлбэл, "42" -ыг 42 болгож хөрвүүлж болох боловч харин "Сайн уу, Дэлхий" гэхэд хэцүү шүү дээ. is_numberic нь эхний тохиолдолд үнэн, хоёр дахь тохиолдолд худал утгыг буцаадаг . Энд нэгэн жишээ байна:

<?php
$number1 = "10";
$number2 = 20;

if((is_numeric($number1)) && (is_numeric($number2)))
    echo "Result: " . ($number1 + $number2);
else
    echo "Both variables have to be numbers!";
?>

Одоо "10" -ыг үг эсвэл өгүүлбэр болгон өөрчилж үзээрэй, жишээ нь "Сайн уу Дэлхий" гэж. Өгсөн нөхцөл бүтэлгүйтэж, анхааруулга хэвлэгдэх болно. Энэ нь хэрэглэгчийн оролтыг баталгаажуулах үед хэрэг болно, дараа нь бид үзэх болно.

In some situations, you may need a real integer instead of a string that is numeric, like in the above example. Even though PHP is loosely typed, type casting does exist - you may cast one type to another. Have a look at this example:

<?php
$var = "30";
echo "The current datatype of var is: " . gettype($var) . "<br /><br />";
$var = (int)$var;
echo "The current datatype of var is: " . gettype($var);
?>

We use the int keyword, inside a set of parentheses, to define a new type for the variable. Obviously, it works the other way around as well - you may cast an integer to become a string and so on.

Floats

As mentioned, there are two different data types for working with numbers: Integers and floats. In the next example, I will try to show you the difference. Try running this piece of sample code:

<?php
$number1 = 10;
$number2 = 3;
$number3 = 5;

$result = $number1 / $number2;

echo "Result as a float: " . $result . "<br /><br />";
echo "Result as a float, rounded: " . round($result, 2) . "<br /><br />";
echo "Result as an integer: " . (int)$result . "<br /><br />";
echo "Multiplication as a float: " . ($result * $number3) . "<br /><br />";
echo "Multiplication as an integer: " . ((int)$result * $number3) . "<br /><br />";
?>

Hopefully the output of this code will describe it self. As you can see, there is a difference between operating with integers and floats. Be aware that PHP will return a float instead of an integer, when dividing two integers. If you cast the result to an integer, it will be automatically rounded downwards.

This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!