Giá trị mảng php

Khi làm việc với mảng PHP, lập trình viên thường cần tìm kiếm một giá trị trong khi nhập dữ liệu từ cơ sở dữ liệu. Để giảm bớt khối lượng công việc, các nhà phát triển PHP đã giới thiệu một vài hàm sẵn có giúp người dùng tìm kiếm và định vị một giá trị cụ thể trong mảng đã cho. Dưới đây được cung cấp là hai hàm PHP được sử dụng để tìm kiếm các giá trị trong một mảng

  1. PHP. hàm in_array[]
  2. Hàm array_search[] trong PHP

Hướng dẫn này sẽ trình bày ngắn gọn về cú pháp, giá trị trả về, tham số và các ví dụ khác nhau của cả hai hàm

1. Hàm mảng_tìm kiếm [] trong PHP

Array_search[] trong PHP là một hàm sẵn có được sử dụng rộng rãi để tìm kiếm và định vị một giá trị cụ thể trong mảng đã cho. Nếu tìm thấy thành công giá trị cụ thể, nó sẽ trả về giá trị khóa tương ứng. Nếu phần tử được tìm thấy hai lần trở lên, thì lần xuất hiện đầu tiên của khóa của giá trị khớp sẽ được trả về

cú pháp

Thông số

Hàm array_search[] nhận ba tham số, trong đó hai tham số là bắt buộc và tham số cuối cùng là tùy chọn. Các thông số của chức năng này như sau

  1. $value [bắt buộc]. Tham số này đại diện cho giá trị mà người dùng muốn tìm kiếm trong mảng đã cho
  2. mảng $ [bắt buộc]. Tham số này đại diện cho mảng ban đầu, trong đó người dùng muốn tìm kiếm phần tử
  3. nghiêm ngặt_tham số [tùy chọn]. Đây là một tham số tùy chọn có thể được đặt thành TRUE hoặc FALSE. Nó thể hiện tính chặt chẽ của tìm kiếm mảng. Theo mặc định, tham số này được đặt thành Boolean FALSE
    • Nếustrict_parameter được đặt thành TRUE, thì hàm sẽ tìm kiếm các giá trị tương tự trong mảng, i. e. , một chuỗi 200 sẽ không được coi là giống như số nguyên 200. Do đó, cả hai giá trị đều khác nhau
    • Nếu nghiêm ngặt_tham số được đặt thành Boolean FALSE, nghiêm ngặt không được giữ lại, tôi. e. , một chuỗi 200 sẽ được coi là giống như số nguyên 200

Trở lại

Hàm array_search[] trả về khóa của phần tử tương ứng được truyền

  • Nó trả về Boolean Sai, nếu không tìm thấy giá trị tìm kiếm trong mảng,
  • Ngược lại, nó trả về True nếu giá trị tồn tại trong mảng. Nếu giá trị tìm kiếm xuất hiện nhiều lần trong mảng, thì khóa khớp đầu tiên được trả về

ví dụ 1. Trong chương trình dưới đây, chúng ta tìm hiểu cách tìm kiếm một giá trị mảng với sự trợ giúp của hàm array_search[] trong đó tham_số nghiêm ngặt được đặt thành giá trị mặc định của nó

đầu ra

ví dụ 2. Trong chương trình dưới đây, chúng tôi đã triển khai hàm in_array[] để thực hiện thao tác tìm kiếm mảng ở chế độ nghiêm ngặt. Đối với điều này, chúng tôi đã đặt tham số cuối cùng $mode thành True

Khi một mảng đã được tạo, các mục có thể được thêm, xóa và sửa đổi, sắp xếp, v.v. Các mục trong một mảng có thể thuộc bất kỳ loại biến nào và một mảng có thể chứa bất kỳ hỗn hợp các loại dữ liệu nào - không nhất thiết mỗi phần tử trong mảng phải có cùng loại

Các phần tử của một mảng được truy cập bằng cách sử dụng một phím. Có hai loại mảng và loại khóa được sử dụng để truy cập một phần tử của mảng sẽ quyết định loại mảng. Trong một mảng khóa số, các phần tử được truy cập bằng cách chỉ định vị trí số của phần tử trong mảng. Mục đầu tiên trong một mảng là phần tử 0, mục thứ hai là phần tử 1, v.v. Loại mảng thứ hai là mảng kết hợp trong đó tên được đặt cho mỗi phần tử và tên đó được sử dụng để truy cập phần tử mảng tương ứng

Tạo một mảng PHP

Mảng được tạo bằng hàm array[]. Hàm array[] nhận 0 hoặc nhiều đối số và trả về mảng mới được gán cho một biến bằng cách sử dụng toán tử gán [=]. Nếu các đối số được cung cấp, chúng được sử dụng để khởi tạo mảng với dữ liệu

Mảng PHP tự động phát triển và thu nhỏ khi các mục được thêm và xóa, do đó không cần thiết phải chỉ định kích thước mảng tại thời điểm tạo như với một số ngôn ngữ lập trình khác

Chúng ta có thể tạo một mảng trống như sau

Ngoài ra, chúng ta có thể tạo một mảng được khởi tạo trước với các giá trị bằng cách cung cấp các giá trị làm đối số cho hàm array[]

Truy cập các phần tử trong một mảng 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

________số 8

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 cách sử dụ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 đề cập 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

Tóm lược

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ẽ được đền đáp nhiều lần trong tương lai

Làm cách nào để đọc các giá trị mảng trong PHP?

Đọc phần tử mảng. Để truy cập một phần tử trong một mảng, bạn viết tên biến của mảng, theo sau là chỉ số của phần tử trong dấu ngoặc vuông. $myArray[ chỉ số ].
Thay đổi giá trị phần tử. .
Thêm phần tử. .
Loại bỏ các yếu tố. .
Xuất một mảng với print_r[].
Tóm lược

Giá trị mảng trong PHP là gì?

Mảng là một biến đặc biệt mà chúng ta sử dụng để lưu trữ hoặc giữ nhiều giá trị trong một biến mà không phải tạo thêm biến để lưu trữ các giá trị đó. To create an array in PHP, we use the array function array[ ] . By default, an array of any variable starts with the 0 index.

Làm cách nào để lấy mảng giá trị mảng trong PHP?

Hàm array_values[] trả về một mảng chứa tất cả các giá trị của một mảng. Mẹo. Mảng trả về sẽ có các phím số, bắt đầu từ 0 và tăng lên 1.

Làm cách nào để lưu trữ các giá trị trong mảng trong PHP?

Để tạo một mảng kết hợp với mảng[] , hãy sử dụng ký hiệu => để phân tách các chỉ mục khỏi các giá trị . $price = mảng['Miếng đệm' => 15. 29, 'Bánh xe' => 75. 25, 'Lốp xe' => 50. 00]; .

Chủ Đề