Verilənlər Tipi və Tip Yoxlama: PHP-də Məlumatlarla İşləmək

PHP proqramlaşdırma dilində, verilənlər növləri proqramın düzgün və səmərəli şəkildə işləməsi üçün çox vacibdir. Hər bir dəyişən özünəməxsus verilənlər tipinə malikdir və bu tiplərin düzgün istifadə olunması həm yaddaş optimizasiyası, həm də məntiqi səhvlərin qarşısını almaq üçün əhəmiyyətlidir. Bu məqalədə PHP-də verilənlər tiplərini, tip yoxlanışını və məlumatlarla necə işləmək lazım olduğunu izah edəcəyik.

PHP-də Verilənlər Tipi Nədir?

PHP-də hər bir dəyişən müəyyən bir məlumat tipinə malikdir və bu tip, həmin dəyişəndə hansı cür məlumat saxlanılacağını təyin edir. PHP dinamik olaraq tip təyin edən dillərdən biridir, yəni dəyişənlər müəyyən edildiyi anda avtomatik olaraq tip təyin edilir. Ancaq məlumat tipi üzərində nəzarəti saxlamaq və düzgün tipdən istifadə etmək kodun sabitliyini və performansını artırır.

PHP-də Əsas Verilənlər Tipləri

PHP-də əsas verilənlər tipləri aşağıdakılardır:

  1. Tam ədəd (Integer): Bu tip müsbət və ya mənfi tam ədədləri təmsil edir.

    $integer = 42; // Məsələn, tam ədəd
  2. Onluq ədəd (Float): Ondalıq nöqtəsi olan ədədlərdir (real ədədlər).

    $float = 3.14; // Ondalığa malik ədəd
  3. Sətir (String): Mətn məlumatlarını saxlamaq üçün istifadə olunur.

    $string = "Hello World!";
  4. Məntiqi tip (Boolean): Yalnız iki qiymət alır: true (doğru) və false (yanlış).

    $boolean = true; // Məntiqi doğru dəyər
  5. Massiv (Array): Birdən çox dəyəri bir dəyişəndə saxlamaq üçün istifadə olunur.

    $array = array(1, 2, 3, 4, 5);
  6. Obyekt (Object): Obyektlər siniflərdən yaradılır və onların daxilində məlumat və funksiyalar saxlanılır.

    class Animal {
        public $name;
        public function __construct($name) {
            $this->name = $name;
        }
    }
    $cat = new Animal("Cat");
  7. Null: null dəyəri, dəyişənə heç bir dəyərin təyin edilmədiyini göstərir.

    $emptyVar = null; // Heç bir dəyərə malik olmayan dəyişən

Verilənlərin Tipini Yoxlama

Bəzən dəyişənin tipini yoxlamaq lazım gəlir, çünki proqramın düzgün işləməsi üçün məlumatın müəyyən bir tipə malik olmasını təmin etmək vacibdir. PHP-də bu məqsəd üçün bir neçə faydalı funksiya var:

1. gettype() Funksiyası

Bu funksiya dəyişənin tipini qaytarır. Məsələn:

$var = 123;
echo gettype($var); // Nəticə: "integer"

2. is_* Funksiyaları

PHP bir çox fərqli tip yoxlama funksiyaları təqdim edir. Bunlardan bəziləri:

  • is_int() – dəyişənin tam ədəd olub-olmadığını yoxlayır.
  • is_float() – dəyişənin onluq ədəd olub-olmadığını yoxlayır.
  • is_string() – dəyişənin sətir (string) olub-olmadığını yoxlayır.
  • is_bool() – dəyişənin məntiqi (boolean) tipdə olub-olmadığını yoxlayır.
  • is_array() – dəyişənin massiv (array) olub-olmadığını yoxlayır.

Məsələn:

$var = "Salam";
if (is_string($var)) {
    echo "Bu bir sətir tipidir.";
}

3. Tip Dəyişməsi (Type Casting)

Bəzi hallarda, bir verilənlər tipini digərinə çevirmək lazımdır. PHP-də bunu etmək çox sadədir:

$var = "5"; // Sətir
$var = (int)$var; // Tam ədədə çevrilir
echo gettype($var); // Nəticə: "integer"

Ən çox istifadə edilən tip dəyişmələri:

  • (int) – tam ədədə çevirmək üçün
  • (float) – onluq ədədə çevirmək üçün
  • (string) – sətirə çevirmək üçün
  • (bool) – məntiqi dəyərə çevirmək üçün

PHP-də Tip Təhlükəsizliyi və Möhkəm Nəzarət

PHP, zəif tipli (weakly typed) bir dildir, yəni bir dəyişənin tipi lazımi anda avtomatik dəyişə bilər. Məsələn:

$var = "5" + 3; // PHP avtomatik olaraq "5" sətirini tam ədədə çevirir
echo $var; // Nəticə: 8

Lakin bu çevrilmə bəzi hallarda gözlənilməz nəticələrə səbəb ola bilər. Buna görə də, PHP 7.0 və sonrakı versiyalarda sərt tip yoxlaması (strict typing) funksiyası təqdim olunub. Sərt tip yoxlamasını aktiv etmək üçün faylın əvvəlində declare(strict_types=1); yazmaq lazımdır. Bu zaman PHP, müəyyən edilmiş tipdən kənar verilənləri avtomatik çevirməyəcək və uyğun olmayan bir tip tapdıqda xəta verəcəkdir.

Məsələn:

declare(strict_types=1);

function addNumbers(int $a, int $b) {
    return $a + $b;
}

echo addNumbers(5, "7"); 
// Bu zaman xəta çıxacaq, çünki sərt tip yoxlaması aktivdir

PHP-də Tip Anlatımları (Type Hinting)

PHP 7-dən etibarən, funksiyalara verilən dəyişənlərin və qaytarılan nəticənin tipini müəyyənləşdirmək mümkündür. Bu, daha təhlükəsiz və aydın kod yazmağınıza kömək edir.

Funksiya üçün Tip Anlatımı:

function add(int $a, int $b): int {
    return $a + $b;
}

Bu kodda, həm add funksiyasına göndərilən arqumentlərin tam ədəd olması, həm də qaytarılan nəticənin tam ədəd olması tələb olunur.

PHP-də verilənlər tipi və tip yoxlama proqramın sabitliyini artırmaq və gözlənilməz xətaların qarşısını almaq üçün vacibdir. PHP-nin zəif tipli təbiəti sizə bəzi hallarda rahatlıq versə də, sərt tip yoxlamaları və tip anlatımları kimi xüsusiyyətlərdən istifadə etmək təhlükəsiz və oxunaqlı kod yaratmaq üçün əhəmiyyətlidir. Düzgün tip yoxlama və verilənlərin idarə edilməsi ilə kodunuz daha optimallaşdırılmış və etibarlı olacaq.