PHP - Mảng Constant: Hướng dẫn cho người mới bắt đầu

Xin chào các pháp sư PHP tương lai! Hôm nay, chúng ta sẽ bắt đầu một chuyến hành trình thú vị vào thế giới của các mảng Constant trong PHP. Đừng lo lắng nếu bạn mới làm quen với lập trình - tôi sẽ là người hướng dẫn thân thiện của bạn, và chúng ta sẽ cùng nhau bước từng bước. Cuối cùng của bài hướng dẫn này, bạn sẽ ngạc nhiên trước số lượng kiến thức bạn đã học được!

PHP - Constant Arrays

Mảng Constant là gì?

Trước khi chúng ta nhảy vào phần sâu hơn, hãy bắt đầu với những điều cơ bản. Trong PHP, một constant là một giá trị không thay đổi trong suốt quá trình thực thi của một script. Nó giống như một lời hứa bạn dành cho mã của mình - "Tôi long trọng tuyên thệ rằng giá trị này sẽ luôn như vậy!"

Bây giờ, tưởng tượng nếu chúng ta có thể đưa ra cùng một lời hứa cho một nhóm các giá trị. Đó chính xác là điều mà các mảng Constant làm! Chúng cho phép chúng ta tạo ra một mảng (một bộ sưu tập các giá trị) mà vẫn giữ nguyên suốt quá trình thực thi script của chúng ta.

Sự phát triển của các mảng Constant trong PHP

Dưới đây là một chút bài học lịch sử cho bạn. Trong các phiên bản早期的 PHP (trước PHP 5.6), việc tạo ra các mảng Constant là khá phức tạp. Nhưng khi PHP phát triển, việc này trở nên dễ dàng và rõ ràng hơn. Hãy cùng xem cách chúng ta có thể tạo ra các mảng Constant trong các phiên bản PHP khác nhau.

PHP 5.6 và sớm hơn

Trong các phiên bản này, chúng ta phải sử dụng một giải pháp tình thế để tạo ra các mảng Constant. Dưới đây là cách nó trông như thế nào:

define('FRUITS', serialize(array('apple', 'banana', 'orange')));

$fruits = unserialize(FRUITS);
print_r($fruits);

Nếu bạn chạy đoạn mã này, bạn sẽ thấy:

Array
(
[0] => apple
[1] => banana
[2] => orange
)

Điều gì đang xảy ra ở đây? Chúng ta đang sử dụng hàm define() để tạo ra một constant, nhưng chúng ta đã serializing mảng của mình trước. Khi muốn sử dụng nó, chúng ta phải unserialize. Nó giống như việc đóng gói quần áo của bạn vào vali (serializing) trước chuyến đi, và sau đó unpacking chúng (unserializing) khi bạn đến nơi.

PHP 5.6 Trở lên

PHP 5.6 đã mang lại niềm vui cho các nhà phát triển bằng cách giới thiệu một cách đơn giản hơn để xác định các mảng Constant:

define('ANIMALS', ['dog', 'cat', 'bird']);

print_r(ANIMALS);

Điều này sẽ xuất ra:

Array
(
[0] => dog
[1] => cat
[2] => bird
)

Đẹp hơn nhiều, phải không? Không cần đóng gói và unpacking vali nữa!

Mảng Constant PHP 7 Trở lên: Thời đại hiện đại

Bây giờ, hãy nhảy tới PHP 7 và trở lên. Đây là nơi mà các mảng Constant thực sự tỏa sáng. PHP 7 đã giới thiệu từ khóa const để xác định các mảng Constant, làm cho cuộc sống của chúng ta dễ dàng hơn.

const COLORS = ['red', 'green', 'blue'];

print_r(COLORS);

Kết quả xuất ra:

Array
(
[0] => red
[1] => green
[2] => blue
)

Đẹp mắt phải không? Như PHP đang nói, " Đây là mảng Constant của bạn. Không có rắc rối, không có phiền toái!"

Ví dụ thực tế: Sử dụng các mảng Constant trong các tình huống thực tế

Bây giờ chúng ta đã hiểu các mảng Constant là gì và cách tạo chúng, hãy xem một số ví dụ thực tế về cách chúng có thể được sử dụng trong các tình huống thực tế.

Ví dụ 1: Các ngày trong tuần

Hãy tưởng tượng bạn đang xây dựng một ứng dụng lịch trình. Bạn có thể muốn có một mảng Constant của các ngày trong tuần:

const DAYS_OF_WEEK = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'];

echo "The first day of the week is " . DAYS_OF_WEEK[0] . ".\n";
echo "The weekend days are " . DAYS_OF_WEEK[5] . " and " . DAYS_OF_WEEK[6] . ".\n";

Điều này sẽ xuất ra:

The first day of the week is Monday.
The weekend days are Saturday and Sunday.

Bằng cách sử dụng một mảng Constant, chúng ta đảm bảo rằng các ngày trong tuần luôn ở đúng thứ tự và không thể bị thay đổi ngẫu nhiên ở nơi khác trong mã của chúng ta.

Ví dụ 2: Cấu hình thiết lập

Các mảng Constant rất tốt để lưu trữ các thiết lập cấu hình. Hãy设想 chúng ta đang xây dựng một trang web thương mại điện tử nhỏ:

const SHOP_CONFIG = [
'name' => 'PHP Gadgets',
'currency' => 'USD',
'tax_rate' => 0.08,
'free_shipping_threshold' => 50
];

echo "Welcome to " . SHOP_CONFIG['name'] . "!\n";
echo "Orders over $" . SHOP_CONFIG['free_shipping_threshold'] . " qualify for free shipping.\n";

Kết quả xuất ra:

Welcome to PHP Gadgets!
Orders over $50 qualify for free shipping.

Bằng cách sử dụng một mảng Constant, chúng ta giữ tất cả các cấu hình của mình ở một nơi, làm cho việc quản lý và cập nhật chúng dễ dàng hơn.

Sử dụng nâng cao: Mảng Constant đệ quy

Khi bạn trở nên thoải mái với các mảng Constant, bạn có thể muốn tạo ra các cấu trúc phức tạp hơn. Tin tốt là! PHP cho phép các mảng Constant đệ quy. Hãy xem một ví dụ:

const MENU = [
'appetizers' => ['salad', 'soup', 'bruschetta'],
'main_courses' => ['steak', 'salmon', 'vegetarian_pasta'],
'desserts' => ['ice_cream', 'chocolate_cake', 'fruit_tart']
];

echo "Today's soup is " . MENU['appetizers'][1] . ".\n";
echo "For vegetarians, we recommend the " . MENU['main_courses'][2] . ".\n";

Kết quả xuất ra:

Today's soup is soup.
For vegetarians, we recommend the vegetarian_pasta.

Cấu trúc đệ quy này cho phép chúng ta tổ chức dữ liệu của mình một cách logic và dễ tiếp cận hơn.

Các nguyên tắc tốt nhất và lời khuyên

Trước khi chúng ta kết thúc, hãy đi qua một số nguyên tắc tốt nhất và lời khuyên cho việc sử dụng các mảng Constant:

  1. Sử dụng chữ IN HOA cho tên các constant. Đây là một quy ước giúp bạn dễ dàng nhận ra các constant trong mã của mình.
  2. Chọn tên có ý nghĩa cho các constant. 'DAYS_OF_WEEK' rõ ràng hơn nhiều so với 'DOW'.
  3. Sử dụng các mảng Constant cho dữ liệu thực sự không thay đổi. Nếu bạn có thể cần thay đổi mảng sau này, hãy cân nhắc sử dụng một biến thông thường thay vì.
  4. Nhớ rằng trong khi mảng itself là constant, nếu nó chứa các đối tượng, các thuộc tính của các đối tượng đó vẫn có thể bị thay đổi.

Kết luận

Chúc mừng! Bạn đã bước đầu vào thế giới của các mảng Constant trong PHP. Chúng ta đã cùng nhau khám phá sự phát triển của các mảng Constant từ PHP 5.6 đến PHP 7 và xa hơn, tìm hiểu các ví dụ thực tế và thậm chí còn dipped chân vào sử dụng nâng cao.

Nhớ rằng các mảng Constant là bạn của bạn khi bạn cần lưu trữ các bộ sưu tập dữ liệu không thay đổi. Chúng giúp làm cho mã của bạn dự đoán được và dễ dàng bảo trì hơn.

Khi bạn tiếp tục hành trình PHP của mình, bạn sẽ tìm thấy nhiều cách sử dụng hơn cho các mảng Constant. Chúng giống như những tảng đá vững chắc trong dòng sông mã của bạn - đáng tin cậy, không thay đổi và luôn ở đó khi bạn cần chúng.

Tiếp tục thực hành, tiếp tục mã hóa, và quan trọng nhất, tiếp tục vui vẻ với PHP!

Credits: Image by storyset