Sự khác biệt giữa mảng chỉ mục và mảng kết hợp trong php

Mảng là một cấu trúc dữ liệu lưu trữ một hoặc nhiều loại giá trị tương tự trong một giá trị. Ví dụ: nếu bạn muốn lưu trữ 100 số thì thay vì xác định 100 biến, bạn có thể dễ dàng xác định một mảng có độ dài 100

Có ba loại mảng khác nhau và mỗi giá trị mảng được truy cập bằng ID c được gọi là chỉ mục mảng

  • Mảng số - Một mảng có chỉ mục số. Các giá trị được lưu trữ và truy cập theo kiểu tuyến tính

  • Mảng kết hợp - Một mảng có chuỗi làm chỉ mục. Điều này lưu trữ các giá trị phần tử liên kết với các giá trị chính thay vì theo thứ tự chỉ mục tuyến tính nghiêm ngặt

  • Mảng nhiều chiều - Một mảng chứa một hoặc nhiều mảng và giá trị được truy cập bằng nhiều chỉ số

LƯU Ý - Các hàm mảng tích hợp được cung cấp trong tham chiếu hàm PHP Array Functions

Mảng số

Các mảng này có thể lưu trữ số, chuỗi và bất kỳ đối tượng nào nhưng chỉ mục của chúng sẽ được biểu thị bằng số. Theo mặc định, chỉ số mảng bắt đầu từ số không

Ví dụ

Sau đây là ví dụ minh họa cách tạo và truy cập mảng số

Ở đây chúng ta đã sử dụng hàm array[] để tạo mảng. Chức năng này được giải thích trong tài liệu tham khảo chức năng

   
   
      ";
         }
         
         /* Second method to create array. */
         $numbers[0] = "one";
         $numbers[1] = "two";
         $numbers[2] = "three";
         $numbers[3] = "four";
         $numbers[4] = "five";
         
         foreach[ $numbers as $value ] {
            echo "Value is $value 
"; } ?>

Điều này sẽ tạo ra kết quả sau -

Value is 1 
Value is 2 
Value is 3 
Value is 4 
Value is 5 
Value is one 
Value is two 
Value is three 
Value is four 
Value is five 

Mảng kết hợp

Các mảng kết hợp rất giống với các mảng số về mặt chức năng nhưng chúng khác nhau về chỉ số của chúng. Mảng kết hợp sẽ có chỉ mục dưới dạng chuỗi để bạn có thể thiết lập mối liên kết chặt chẽ giữa khóa và giá trị

Để lưu trữ tiền lương của nhân viên trong một mảng, một mảng được lập chỉ mục bằng số sẽ không phải là lựa chọn tốt nhất. Thay vào đó, chúng ta có thể sử dụng tên nhân viên làm khóa trong mảng kết hợp của mình và giá trị sẽ là mức lương tương ứng của họ

LƯU Ý - Không giữ mảng kết hợp bên trong dấu ngoặc kép trong khi in nếu không nó sẽ không trả về bất kỳ giá trị nào

Ví dụ

   
      
       2000, "qadir" => 1000, "zara" => 500];
         
         echo "Salary of mohammad is ". $salaries['mohammad'] . "
"; echo "Salary of qadir is ". $salaries['qadir']. "
"; echo "Salary of zara is ". $salaries['zara']. "
"; /* Second method to create array. */ $salaries['mohammad'] = "high"; $salaries['qadir'] = "medium"; $salaries['zara'] = "low"; echo "Salary of mohammad is ". $salaries['mohammad'] . "
"; echo "Salary of qadir is ". $salaries['qadir']. "
"; echo "Salary of zara is ". $salaries['zara']. "
"; ?>

Điều này sẽ tạo ra kết quả sau -

Salary of mohammad is 2000
Salary of qadir is 1000
Salary of zara is 500
Salary of mohammad is high
Salary of qadir is medium
Salary of zara is low

Mảng đa chiều

Mảng nhiều chiều mỗi phần tử trong mảng chính cũng có thể là một mảng. Và mỗi phần tử trong mảng con có thể là một mảng, v.v. Các giá trị trong mảng nhiều chiều được truy cập bằng nhiều chỉ mục

Ví dụ

Trong ví dụ này, chúng tôi tạo một mảng hai chiều để lưu trữ điểm của ba sinh viên trong ba môn học -

Tôi sẽ tìm hiểu về mảng, tôi sẽ đề cập đến 3 loại mảng là mảng chỉ mục, mảng kết hợp và mảng nhiều chiều với các ví dụ

  • Mảng được lập chỉ mục là gì và cách sử dụng nó
  • Định nghĩa về Mảng kết hợp và công dụng của chúng.  
  • Mảng đa chiều

Yêu cầu

  • Máy chủ hỗ trợ PHP, Xampp hoặc Wamp chẳng hạn
  • Một IDE như Sublime text
  • Trình duyệt [ví dụ Chrome]

Sự khó khăn

  • Căn bản

Sự miêu tả

Trong hướng dẫn này, chúng ta sẽ bắt đầu với ngôn ngữ lập trình PHP, chúng ta sẽ nói về mảng, các loại mảng và sự khác biệt giữa chúng

Giới thiệu về mảng

Mảng là loại dữ liệu có cấu trúc nhóm thông tin lại với nhau. Thông tin có thể ở nhiều loại [số nguyên, số thực, số float, Booleans, chuỗi. v.v.], mảng có thể lưu trữ một hoặc nhiều giá trị tại một thời điểm và các giá trị có thể khác nhau [ví dụ: số nguyên có chuỗi].  

Khi khai báo một bảng, sẽ vô ích khi chỉ định kích thước của nó và loại dữ liệu mà nó sẽ chứa. PHP tự động làm điều đó. Mảng là bảng động. Tại mỗi mục mới được lưu trong bảng, PHP sẽ mở rộng kích thước của nó thêm 1 phần tử. Có ba loại mảng. mảng chỉ số số, mảng kết hợp và mảng đa chiều.  

1 - Mảng được lập chỉ mục

Một mảng được lập chỉ mục đơn giản là một danh sách các phần tử được xác định bởi một chỉ mục số duy nhất. Phần tử đầu tiên của mảng sẽ được đánh chỉ số theo chỉ số 0, phần tử thứ hai theo chỉ số 1, phần tử thứ ba theo chỉ số 2, v.v. Các chỉ mục được đặt tự động bởi PHP.  

Để khai báo một mảng được lập chỉ mục, chúng tôi sử dụng cú pháp này.  

$name = array[value1, value2, value3 ..etc];

Trong ví dụ của tôi, tôi sẽ khai báo một mảng bạn bè, loại giá trị sẽ chứa là "Chuỗi"

$Friends = array[

"Alexendre",

"Alex",

________số 8

"Arden",

Value is 1 
Value is 2 
Value is 3 
Value is 4 
Value is 5 
Value is one 
Value is two 
Value is three 
Value is four 
Value is five 
0

Value is 1 
Value is 2 
Value is 3 
Value is 4 
Value is 5 
Value is one 
Value is two 
Value is three 
Value is four 
Value is five 
1

Để hiện mảng bạn có nhiều cách, bạn có thể dùng cách

Value is 1 
Value is 2 
Value is 3 
Value is 4 
Value is 5 
Value is one 
Value is two 
Value is three 
Value is four 
Value is five 
2, cũng có thể dùng cách
Value is 1 
Value is 2 
Value is 3 
Value is 4 
Value is 5 
Value is one 
Value is two 
Value is three 
Value is four 
Value is five 
3 hoặc $Friends = array[0. vân vân

$Friends = array[1

$Friends = array[2

$Friends = array[3

phương thức print_r[]

$Friends = array[4

$Friends = array[5

$Friends = array[6

Tôi đã sử dụng hai phương pháp và đây là kết quả của từng phương pháp.  

2- Mảng kết hợp.  

Mảng kết hợp hoạt động theo nguyên tắc giống nhau, ngoại trừ việc thay vì đánh số các ô, chúng ta sẽ gắn nhãn cho chúng bằng cách đặt cho mỗi ô một tên khác nhau.  

Để khai báo một mảng được lập chỉ mục, chúng tôi sử dụng cú pháp này.  

$Friends = array[7

$Friends = array[8

Value is 1 
Value is 2 
Value is 3 
Value is 4 
Value is 5 
Value is one 
Value is two 
Value is three 
Value is four 
Value is five 
1

Sự khác biệt giữa mảng kết hợp và mảng được lập chỉ mục là các khóa, trong mảng được lập chỉ mục, PHP cung cấp cho mỗi giá trị một chỉ mục, trong mảng kết hợp đó là bạn cung cấp cho mỗi giá trị một khóa

"Alexendre",0

"Alexendre",1

"Alexendre",2

"Alexendre",3

"Alexendre",4

Value is 1 
Value is 2 
Value is 3 
Value is 4 
Value is 5 
Value is one 
Value is two 
Value is three 
Value is four 
Value is five 
1

Bạn có nhiều cách để hiển thị giá trị của mảng kết hợp, hãy sử dụng lại phương thức print_r và vòng lặp foreach

$Friends = array[4

"Alexendre",7

$Friends = array[6

vòng lặp foreach

"Alexendre",9

"Alex",0

$Friends = array[3

Và đây là kết quả

3- Mảng đa chiều.  

Mảng nhiều chiều là một mảng chứa một hoặc nhiều mảng, các khóa của mảng này có thể tự động từ 0 đến mục cuối cùng hoặc bằng cách đặt cho mỗi tên khác nhau dưới dạng mảng kết hợp

Để khai báo một mảng được lập chỉ mục, chúng tôi sử dụng cú pháp này.  

$Friends = array[7

"Alex",3

"Alex",4

"Alex",5

"Alex",6

"Alex",7

Value is 1 
Value is 2 
Value is 3 
Value is 4 
Value is 5 
Value is one 
Value is two 
Value is three 
Value is four 
Value is five 
1

Mảng chính chứa nhiều mảng khác, nó sẽ là mảng nhiều chiều hơn 2D

"Alex",9

"Aldwin",0

"Aldwin",1

"Aldwin",2

"Aldwin",3

"Aldwin",4

"Aldwin",5

"Aldwin",6

"Aldwin",7

"Aldwin",8

"Aldwin",9

"Aldwin",5

"Arden",1

Value is 1 
Value is 2 
Value is 3 
Value is 4 
Value is 5 
Value is one 
Value is two 
Value is three 
Value is four 
Value is five 
1

Tôi sẽ sử dụng foreach và print_r để hiển thị các giá trị của mảng này và đây là kết quả

Video hướng dẫn

Chương trình giáo dục

Đây là video đầu tiên trong hướng dẫn này.  

Bằng chứng về công việc đã hoàn thành

https. //github. com/alexendre-maxim/PHP-Hướng dẫn

#video-hướng dẫn #video #lập trình

4 năm trước trong #utopian-io của alexendre-maxim [63]

$19. 33

  • Khoản thanh toán trước đây $19. 33, 0. 00 TRX
  • - Tác giả $14. 71, 0. 00 TRX
  • - Người phụ trách $4. 62, 0. 00 TRX

40 phiếu bầu

  • + không tưởng-io
  • + stem-ua
  • + jaff8
  • + iauns
  • + reazuliqbal
  • + đất sét
  • + azizbd
  • + gấu trúc vĩ đại
  • + đơn giản
  • + amosbastian
  • + ayasha
  • + alexandru-châm ngôn
  • + sheikhsayem
  • + jjakw. nhà phát triển
  • + mhossain
  • + nhanh và tò mò
  • + sammi
  • + chuyên gia thống kê
  • + cửa hàng bán bò tót
  • + ilovecoding
  • và 20 nữa

Trả lời 11

Loại.  

  • xu hướng
    • xu hướng
    • phiếu bầu
    • Lứa tuổi
  • [-]

    yokunjon [62]
      4 năm trước  

    Tôi cảm ơn vì sự đóng góp của bạn. Đây là những suy nghĩ của tôi;

    • Có rất nhiều lỗi cấu trúc và ngữ pháp trong bài phát biểu của bạn. Tôi khuyên bạn nên cấu trúc bài phát biểu của mình trước khi ghi âm và thực hành cho đến khi nó đáng tin cậy. Mắc phải những lỗi này khiến bài phát biểu của bạn trở nên khó hiểu. Hướng dẫn [video] phải trang trọng và dễ hiểu

    • Thay vì viết các ví dụ trong khi bạn đang quay, hãy chuẩn bị trước hoặc cắt các phần của video trong khi bạn đang viết. Bằng cách đó, bạn có thể giảm đáng kể thời gian và nội dung lấp đầy, dẫn đến hiệu quả về nội dung/thời gian

    Đóng góp của bạn đã được đánh giá theo các chính sách và hướng dẫn của Utopian, cũng như một bộ câu hỏi được xác định trước liên quan đến danh mục

    Để xem những câu hỏi đó và các câu trả lời phù hợp liên quan đến bài đăng của bạn, hãy nhấp vào đây

    Bạn cần trợ giúp? . //hỗ trợ. không tưởng. io/.
    Trò chuyện với chúng tôi trên Discord.
    [người điều hành không tưởng]

    $6. 54

    • Khoản thanh toán trước đây $6. 54, 0. 00 TRX
    • - Tác giả $4. 94, 0. 00 TRX
    • - Người phụ trách $1. 59, 0. 00 TRX

    11 phiếu bầu

    • + không tưởng-io
    • + bài thơ
    • + gấu trúc vĩ đại
    • + alexandru-châm ngôn
    • + reazuliqbal
    • + chuyên gia thống kê
    • + amosbastian
    • + người hâm mộ pixel
    • + nhanh và tò mò
    • + cửa hàng bán bò tót
    • + cây lau nhà2e

    Hồi đáp

    [-]

    utopian-io [71]
      4 năm trước  

    Cảm ơn bạn đã đánh giá, @yokunjon

    Cho đến nay trong tuần này, bạn đã xem xét 2 đóng góp. Hãy tiếp tục phát huy

    $0. 00

    2 phiếu bầu

    • + bài thơ
    • + cây lau nhà2e

    Hồi đáp

    [-]

    alexendre-maxim [63]
      4 năm trước  

    Cảm ơn bạn @yokunjon, tôi sẽ cố gắng cấu trúc bài phát biểu của mình trước khi ghi âm

    $0. 00

    Hồi đáp

    [-]

    ilovecoding [39]
      4 năm trước  

    Xin chào. Bài đăng của bạn đã được đánh giá cao và nâng cấp bởi @ilovecoding vì chúng tôi yêu viết mã. Tiếp tục làm công việc tốt. Cân nhắc việc ủng hộ nhận xét này để hỗ trợ @ilovecoding và tăng phần thưởng trong tương lai của bạn. ^_^ Bật lên.


    Trả lời. dừng để tắt nhận xét. Cảm ơn.

    $0. 00

    2 phiếu bầu

    • + alexandru-châm ngôn
    • + ilovecoding

    Hồi đáp

    [-]

    alexendre-maxim [63]
      4 năm trước  

    Cảm ơn bạn @ilovecoding

    $0. 00

    Hồi đáp

    [-]

    steem-ua [64]
      4 năm trước  

    Xin chào @ alexendre-maxim

    Bài đăng của bạn đã được nâng cấp bởi @steem-ua, dApp Steem mới, sử dụng UserAuthority để quản lý bài đăng theo thuật toán.
    Bài đăng của bạn đủ điều kiện để chúng tôi ủng hộ, nhờ sự hợp tác của chúng tôi với @utopian-io.
    Vui lòng tham gia máy chủ @steem-ua Discord của chúng tôi

    $0. 00

    1 phiếu bầu

    • + alexandru-châm ngôn

    Hồi đáp

    [-]

    alexendre-maxim [63]
      4 năm trước  

    Cảm ơn @steem-ua

    $0. 00

    Hồi đáp

    [-]

    utopian-io [71]
      4 năm trước  

    Này, @alexendre-maxim

    Cảm ơn bạn đã đóng góp cho Utopian.
    Chúng tôi rất mong chờ đóng góp tiếp theo của bạn.

    Nhận ưu đãi và hỗ trợ cao hơn Utopian. io.
    Chỉ cần đặt @utopian. thanh toán với tư cách là người thụ hưởng khoản thanh toán 5% [hoặc cao hơn] trên bài đăng đóng góp của bạn [thông qua SteemPlus hoặc Steeditor].

    Muốn trò chuyện? . // bất hòa. gg/h52nFrV

    Bỏ phiếu cho nhân chứng Utopian

    $0. 00

    1 phiếu bầu

    • + jeevanjot

    Hồi đáp

    [-]

    alexendre-maxim [63]
      4 năm trước  

    Cảm ơn bạn

    $0. 00

    Hồi đáp

    [-]

    steemitboard [66]
      4 năm trước  

    Xin chúc mừng @alexendre-maxim. Bạn đã hoàn thành thành tích sau trên Steemit và đã được thưởng [các] huy hiệu mới

    Sự khác biệt giữa mảng chỉ mục và mảng kết hợp là gì?

    Kiểu dữ liệu chỉ mục cho một mảng đơn giản phải là một giá trị số nguyên. Loại chỉ mục cho mảng kết hợp có thể là một trong các loại dữ liệu được hỗ trợ . Các giá trị chỉ mục trong một mảng đơn giản phải là một tập hợp các giá trị số nguyên liền kề. Trong một mảng kết hợp, các giá trị chỉ mục có thể thưa thớt.

    Sự khác biệt giữa mảng kết hợp và đối tượng trong PHP là gì?

    Một đối tượng là một thể hiện của một lớp. Nó chỉ đơn giản là một mẫu vật của một lớp và được cấp phát bộ nhớ. Mảng là cấu trúc dữ liệu lưu trữ một hoặc nhiều loại giá trị tương tự trong một tên nhưng mảng kết hợp khác với một mảng PHP đơn giản . Một mảng chứa chỉ số chuỗi được gọi là mảng kết hợp.

    Sự khác biệt giữa mảng kết hợp và mảng động là gì?

    Khi kích thước của bộ sưu tập không xác định hoặc không gian dữ liệu thưa thớt, một mảng kết hợp là một lựa chọn tốt hơn. Mảng động rất hữu ích cho các tập hợp biến liền kề có số lượng thay đổi linh hoạt. . Phương pháp mảng kết hợp

    Mảng kết hợp PHP là gì?

    Mảng kết hợp - Nó đề cập đến một mảng có chuỗi làm chỉ mục . Thay vì lưu trữ các giá trị phần tử theo thứ tự chỉ mục tuyến tính nghiêm ngặt, điều này sẽ lưu trữ chúng kết hợp với các giá trị chính. Nhiều chỉ số được sử dụng để truy cập các giá trị trong một mảng nhiều chiều, chứa một hoặc nhiều mảng.

    Chủ Đề