PHP - Sabit Diziler

Carissa

Administrator
Katılım
2 Mar 2015
Konular
59,189
Mesajlar
88,442
Çözüm
109
Online süresi
4mo 16d
Reaksiyon Skoru
14,280
Altın Konu
2,398
TM Yaşı
11 Yıl 3 Ay 8 Gün
Başarım Puanı
1,051
MmoLira
695,207
DevLira
234
Ticaret - 0%
0   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!



PHP 5.6 sürümünden önce sabit bir dizi bildirmek mümkün değildi. PHP 5.6'dan itibaren, sabit bir dizi bildirmek için "const" anahtar sözcüğünü kullanabilirsiniz. PHP 7'den itibaren, sabit diziler define() fonksiyonuyla da oluşturulabilir.

Sabit dizi, oluşturulduktan sonra değiştirilemeyen bir dizidir. Normal bir dizinin aksine, tanımlayıcısı "$" işaretiyle başlamaz.

Sabit dizileri bildirmek için kullanılan eski sözdizimi:

const ARR = array(val1, val2, val3);

Örnek


PHP:
<?php
   const FRUITS = array(
      "Watermelon",
      "Strawberries",
      "Pomegranate",
      "Blackberry",
   );
   var_dump(FRUITS);
?>

Aşağıdaki çıktıyı üretecektir:

array(4) {
[0]=>
string(10) "Watermelon"
[1]=>
string(12) "Strawberries"
[2]=>
string(11) "Pomegranate"
[3]=>
string(10) "Blackberry"
}

PHP'de sabit bir dizi bildirmek için geleneksel köşeli parantez sözdizimini de kullanabilirsiniz.

const FRUITS = [
"Watermelon",
"Strawberries",
"Pomegranate",
"Blackberry",
];

Örnek

Sabit bir dizideki herhangi bir öğeyi değiştirmek mümkün değildir. Bu nedenle, aşağıdaki kod ölümcül bir hata verir.

PHP:
<?php
   const FRUITS = [
      "Watermelon",
      "Strawberries",
      "Pomegranate",
      "Blackberry",
   ];
   FRUITS[1] = "Mango";
?>

Aşağıdaki çıktıyı üretecektir:

PHP Fatal error: Cannot use temporary expression in write context

Sabit Diziler PHP 7 ve Sonrası

PHP'nin yeni sürümleri define() fonksiyonuyla sabit bir dizi tanımlamanıza olanak tanır.

PHP:
<?php
   define ('FRUITS',  [
      "Watermelon",
      "Strawberries",
      "Pomegranate",
      "Blackberry",
   ]);
   print_r(FRUITS);
?>

Aşağıdaki çıktıyı üretecektir:

Array
(
[0] => Watermelon
[1] => Strawberries
[2] => Pomegranate
[3] => Blackberry
)

Sabit diziyi burada bildirmek için array() fonksiyonunu da kullanabilirsiniz.

define ('FRUITS', array(
"Watermelon",
"Strawberries",
"Pomegranate",
"Blackberry",
));

Örnek

İlişkisel bir sabit dizi bildirmek de mümkündür. İşte bir örnek:

PHP:
<?php
   define ('CAPITALS',  array(
      "Maharashtra" => "Mumbai",
      "Telangana" => "Hyderabad",
      "Gujarat" => "Gandhinagar",
      "Bihar" => "Patna"
   ));
   print_r(CAPITALS);
?>

Aşağıdaki çıktıyı üretecektir:

Array
(
[Maharashtra] => Mumbai
[Telangana] => Hyderabad
[Gujarat] => Gandhinagar
[Bihar] => Patna
)
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)