Mảng tên PHP

Các phần tử trong mảng kiểu khóa số PHP được truy cập bằng cách tham chiếu đến biến chứa mảng, theo sau là chỉ mục vào mảng của phần tử bắt buộc được đặt trong dấu ngoặc vuông [[]]. Chúng ta có thể mở rộng ví dụ trước để hiển thị giá trị chứa trong phần tử thứ hai của mảng [hãy nhớ rằng chỉ mục dựa trên số 0 nên phần tử đầu tiên là phần tử 0]

Lệnh echo ở trên sẽ xuất giá trị ở vị trí chỉ số 1 của mảng, trong trường hợp này là chuỗi "Yellow"


Tạo một mảng liên kết

Như đã mô tả trước đó, một mảng kết hợp gán tên cho các vị trí trong mảng. Điều này cung cấp một cách thân thiện hơn với con người để truy cập các phần tử mảng so với cách tiếp cận khóa số đã nêu ở trên. Một lần nữa, hàm array[] được sử dụng để tạo mảng, với các đối số tùy chọn để khởi tạo trước các phần tử mảng. Trong trường hợp mảng kết hợp, các đối số có dạng key=>value trong đó key là tên mà phần tử sẽ được tham chiếu và value là giá trị được lưu trữ ở vị trí đó trong mảng

Giả sử chúng ta đang tạo một mảng để lưu trữ thông tin khách hàng của ngân hàng. Ta có thể gán tên khóa cho từng phần tử trong mảng như sau

'John Smith', 'customerAddress'=>'1 The Street', 'accountNumber'=>'123456789'];
?>

Truy cập các phần tử của một mảng kết hợp

Bây giờ chúng ta đã tạo một mảng kết hợp và gán tên cho từng phần tử, chúng ta có thể sử dụng các tên đó để truy cập các giá trị mảng tương ứng. Do đó, chúng ta có thể mở rộng ví dụ trước để trích xuất tên khách hàng từ $customerArray của mình

'John Smith', 'customerAddress'=>'1 The Street', 'accountNumber'=>'123456789'];

      echo $customerArray['customerName'];
?>

Kết quả sẽ là tên khách hàng "John Smith" xuất hiện trên cửa sổ trình duyệt

Tạo mảng PHP đa chiều

Mảng PHP đa chiều không gì khác hơn là một mảng trong đó mỗi phần tử mảng chính là một mảng. Do đó, một mảng nhiều chiều có thể được coi như một bảng, trong đó mỗi phần tử trong mảng cha đại diện cho một hàng của bảng và các phần tử của mỗi mảng con đại diện cho các cột của hàng đó.

Tập lệnh PHP sau đây cung cấp một ví dụ về mảng nhiều chiều trong đó mảng sách được gán một mảng cho mỗi phần tử chứa thông tin tiêu đề và tác giả cho mỗi cuốn sách

'JavaScript in 24 Hours', 'author'=>'Moncur'];
        $books[1] = array['title'=>'JavaScript Unleashed', 'author'=>'Wyke'];
        $books[2] = array['title'=>'Network+ Second Edition', 'author'=>'Harwood'];
?>

Truy cập các phần tử trong một mảng PHP đa chiều

Để hiểu cách truy cập các phần tử của một mảng nhiều chiều, bạn nên tiếp tục sử dụng phép loại suy bảng mà chúng ta đã bắt đầu trong phần trước. Giả sử một mảng nhiều chiều, trước tiên chúng ta cần chỉ định hàng mảng mà chúng ta muốn truy cập. Thứ hai, chúng ta cần chỉ định cột trong hàng đó. Do đó, để truy cập một phần tử, chúng ta chỉ định tên mảng và sau đó theo sau nó là hàng và cột mong muốn của mảng, mỗi cái được đặt trong dấu ngoặc vuông [[]]

Ví dụ: giả sử chúng tôi muốn truy cập tác giả của cuốn sách thứ hai trong mảng $books của chúng tôi

'JavaScript in 24 Hours', 'author'=>'Moncur'];
        $books[1] = array['title'=>'JavaScript Unleashed', 'author'=>'Wyke'];
        $books[2] = array['title'=>'Network+ Second Edition', 'author'=>'Harwood'];

        echo $books[1]['author'];
?>

Tiếng vang sẽ xuất ra "Wyke" nằm trong cột tác giả của hàng thứ hai của mảng

Sử dụng con trỏ mảng PHP

Mảng PHP duy trì một con trỏ bên trong ghi lại phần tử hiện tại. Con trỏ này có thể được thay đổi bằng cách sử dụng các chức năng tiếp theo, trước đó, đặt lại và kết thúc. Hàm reset và end lần lượt di chuyển con trỏ đến phần tử đầu tiên và cuối cùng của mảng. Hàm next di chuyển con trỏ đến phần tử mảng tiếp theo. prev di chuyển con trỏ đến phần tử mảng trước đó. Hàm next và prev trả về false khi không thể di chuyển thêm nữa theo hướng tương ứng

Mỗi hàm lấy tên của mảng trong đó việc điều chỉnh con trỏ sẽ diễn ra làm đối số

';
      echo 'The previous element is ' .  prev[$colorArray] . '
'; echo 'The first element is ' . reset[$colorArray] . '
'; echo 'The next element is ' . next[$colorArray] . '
'; ?>

Ví dụ trên sẽ hiển thị đầu ra sau

The last element is Indigo
The previous element is Blue
The first element is Red
The next element is Yellow

Thay đổi, thêm và xóa các phần tử mảng PHP

Một phần tử mảng có thể được thay đổi bằng cách gán một giá trị mới cho nó bằng cách sử dụng khóa chỉ mục thích hợp. Ví dụ, để thay đổi phần tử đầu tiên của một mảng

$colorArray = array["Red", "Yellow", "Green", "Blue", "Indigo"];

$colorArray[0] = "Orange";

Một mục mới có thể được thêm vào cuối mảng bằng cách sử dụng hàm array_push[]. Hàm này nhận hai đối số, đối số đầu tiên là tên của mảng và đối số thứ hai là giá trị được thêm vào

0

Một phần tử mới có thể được chèn vào đầu mảng bằng cách sử dụng hàm array_shift[] lấy tên mảng và giá trị được thêm vào làm đối số

1

Mục cuối cùng được thêm vào một mảng có thể được xóa khỏi mảng bằng cách sử dụng hàm array_pop[]. Ví dụ sau loại bỏ phần tử cuối cùng được thêm vào

2

Mục đầu tiên trong mảng có thể được xóa bằng hàm array_unshift[]

3

Lặp qua các phần tử mảng PHP

Thường cần phải lặp qua từng phần tử của một mảng để đọc hoặc thay đổi các giá trị chứa trong đó. Có một số cách mà điều này có thể được thực hiện

Một cơ chế như vậy là sử dụng vòng lặp foreach. Vòng lặp foreach hoạt động giống như vòng lặp for hoặc while và cho phép bạn lặp qua từng phần tử mảng. Có hai cách để sử dụng foreach. Đầu tiên gán giá trị của phần tử hiện tại cho một biến được chỉ định mà sau đó có thể được truy cập trong phần thân của vòng lặp. Cú pháp cho điều này là

foreach [$arrayName là $variable]

Ví dụ

4

Điều này sẽ dẫn đến đầu ra sau

5

Đối với các mảng kết hợp, từ khóa foreach cho phép bạn lặp qua cả khóa và giá trị bằng cú pháp sau

foreach [$arrayName as $keyVariable=>$valueVariable]

Ví dụ

6

Điều này sẽ dẫn đến đầu ra sau

7

Thay thế các phần của một mảng

Toàn bộ khối của phần tử mảng có thể được sửa đổi bằng cách sử dụng hàm array_splice[]. Hàm array_splice[] nhận hai đối số bắt buộc và hai đối số tùy chọn. Đối số đầu tiên là tên của mảng mà hàm sẽ làm việc. Đối số thứ hai chỉ định chỉ mục vào mảng nơi mối nối có hiệu lực. Đối số thứ ba tùy chọn chỉ định điểm kết thúc của mối nối [nếu đối số thứ ba bị bỏ qua thì phần cuối của mảng được giả định]. Đối số cuối cùng là một mảng tùy chọn chứa các phần tử được sử dụng để thay thế các phần tử đã loại bỏ

Ví dụ sau tạo và khởi tạo một mảng, sau đó tạo một mảng gồm các phần tử thay thế trước khi sử dụng hàm nối

8

Ví dụ trên sử dụng hàm array_splice[] để thay thế Three, Four và Five bằng Six, Seven và Eight từ mảng $myReplacements

Sắp xếp một mảng PHP

Một mảng có thể được sắp xếp bằng chức năng sắp xếp. Một số loại khác nhau có thể sử dụng chức năng sắp xếp. Hàm nhận hai đối số. Đối số đầu tiên là tên của mảng. Thứ hai chỉ ra thuật toán sắp xếp để sử dụng. Các thuật toán khả dụng là SORT_NUMERIC, SORT_STRING và SORT_REGULAR. Nếu không có loại sắp xếp nào được chỉ định, SORT_REGULAR sẽ được sử dụng

Các mục mảng tương tự có thể được sắp xếp theo thứ tự giảm dần bằng hàm rsort

Ví dụ: chúng ta có thể sắp xếp mảng tên màu

9

Cũng có thể thực hiện Sắp xếp tự nhiên bằng cách sử dụng hàm natsort

Sắp xếp các mảng kết hợp

Mảng kết hợp có thể được sắp xếp theo hai cách, theo khóa hoặc theo giá trị. Để sắp xếp theo khóa, hãy sử dụng ksort và krsort [sắp xếp ngược]. Để sắp xếp theo giá trị, hãy sử dụng các hàm asort và arsort. Cú pháp và các tùy chọn cho các chức năng này giống như được phác thảo cho các chức năng sắp xếp và sắp xếp ở trên

Nhận thông tin về mảng PHP và các hàm mảng khác

Có một số hàm hữu ích có thể được sử dụng để lấy thông tin về mảng PHP và cũng có một số hàm chưa được trình bày chi tiết trong chương này. Bảng sau liệt kê các chức năng này và cung cấp các mô tả. FunctionDescriptionprint_rIn các phần tử của một mảng vào đầu ra streamarray_keysTrả về một mảng chứa tất cả các khóa trong một mảng kết hợparray_searchTrả về khóa cho giá trị đã cho trong mảng nếu giá trị tồn tạiarray_valuesTrả về một mảng chứa tất cả các giá trị trong một mảngin_arrayTrả về đúng hoặc sai tùy thuộc vào việc giá trị đã chỉ định có nằm trong

Bản tóm tắt

Mảng trong PHP là một trong những cơ chế linh hoạt và mạnh mẽ nhất để lưu trữ và thao tác với danh sách dữ liệu. Phần lớn đã được đề cập trong chương này để đảm bảo rằng bạn vừa có hiểu biết về cách tạo mảng, vừa có nhiều hàm có sẵn để làm việc với các mảng đó. Không có mảng sẽ rất khó làm việc với số lượng lớn các biến liên quan

Mảng sẽ được sử dụng thường xuyên trong quá trình phát triển ứng dụng web bằng PHP. Mảng cũng thường được trả về từ nhiều hàm PHP tích hợp, vì vậy việc dành thời gian tìm hiểu về chúng trong chương này sẽ mang lại hiệu quả gấp nhiều lần trong tương lai

Mảng nào có khóa tên trong PHP?

Mảng kết hợp là các mảng sử dụng các khóa được đặt tên mà bạn gán cho chúng.

mảng tên là gì?

Tên mảng là một loại tên hoặc một loại tên phần tử bất kỳ được chia sẻ bởi tất cả các phần tử của một mảng nhưng các chỉ mục của nó khác nhau. Array name handle as a constant pointer, it can never change during execution of a program. Array name is also used to reach its all element. Therefore Option 3 is correct.

Làm cách nào để đặt một mảng trong PHP?

Thật dễ dàng để tạo một mảng trong tập lệnh PHP. Để tạo một mảng, bạn sử dụng cấu trúc array[]. $myArray = mảng[ các giá trị ]; Để tạo một mảng được lập chỉ mục, chỉ cần liệt kê các giá trị mảng bên trong dấu ngoặc đơn, được phân tách bằng dấu phẩy.

Array_keys[] dùng để làm gì trong PHP?

Mảng_keys[] là một hàm tích hợp sẵn trong PHP và được sử dụng để trả về tất cả các khóa của và mảng hoặc tập hợp con của các khóa. Parameters: The function takes three parameters out of which one is mandatory and other two are optional.

Chủ Đề