Thêm 2 mảng php

Trong PHP có thể thực hiện mảng + mảng. Dấu "cộng" là một cách viết tắt của việc hợp nhất các mảng, nhưng có sự khác biệt về cách chúng được hợp nhất so với cách sử dụng

$first + $second;

// ['a', 'b']
1

Hãy tưởng tượng hai mảng này

$first = [
    'a',
    'b',
];

$second = [
    'c',
];

Hợp nhất chúng bằng cách sử dụng

$first + $second;

// ['a', 'b']
2 sẽ dẫn đến kết quả sau

$first + $second;

// ['a', 'b']

Trong khi sử dụng

$first + $second;

// ['a', 'b']
1, sẽ dẫn đến điều này

array_merge[$first, $second];

// ['a', 'b', 'c']

Điều đang xảy ra ở đây là

$first + $second;

// ['a', 'b']
1 sẽ ghi đè các khóa hiện có, trong khi
$first + $second;

// ['a', 'b']
2 thì không. Nói cách khác. khi một khóa tồn tại trong mảng đầu tiên,
$first + $second;

// ['a', 'b']
2 sẽ không hợp nhất một mục có cùng khóa từ mảng khác vào mảng đầu tiên

Trong ví dụ của chúng tôi, cả hai mảng đều có khóa số, như vậy

$first = [
    0 => 'a',
    1 => 'b',
];

$second = [
    0 => 'c',
];

Điều này giải thích tại sao

$first + $second;

// ['a', 'b']
2 không thêm 'c' làm thành phần. đã có một mục có chỉ số
$first + $second;

// ['a', 'b']
3 trong bản gốc

Điều tương tự cũng áp dụng cho các phím văn bản

$first = [
    'a' => 'a',
    'b' => 'b',
];

$second = [
    'a' => 'a - override',
];

$first + $second;

// ['a' => 'a', 'b' => 'b']

Và cuối cùng,

$first + $second;

// ['a', 'b']
2 cũng hoạt động với các mảng lồng nhau

$first = [
    'level 1' => [
        'level 2' => 'original'
    ],
];

$second = [
    'level 1' => [
        'level 2' => 'override'
    ],
];

Sử dụng

$first + $second;

// ['a', 'b']
2 sẽ giữ giá trị
$first + $second;

// ['a', 'b']
6, trong khi
$first + $second;

// ['a', 'b']
1 sẽ
$first + $second;

// ['a', 'b']
8 nó

Một điều nữa cần đề cập là

$first + $second;

// ['a', 'b']
2 sẽ áp dụng hành vi tương tự khi hợp nhất các mảng nhiều chiều

Nhận thấy một tpyo? . Nếu bạn muốn cập nhật những gì đang diễn ra trên blog này, bạn có thể theo dõi tôi trên Twitter hoặc đăng ký nhận bản tin của tôi. Đăng ký email

Tôi đang làm một công việc mới và điều thú vị khi làm việc với mã của người khác là bạn thường học được rất nhiều thứ mà bạn chưa biết. Một vài tuần trước, tôi đã tìm ra một cách để hợp nhất các mảng trong PHP bằng toán tử +, thay vì sử dụng các hàm mảng [e. g. array_merge] vì vậy hãy chia sẻ cái này tại đây

Ví dụ

Cách dễ nhất để minh họa điều này là với một ví dụ

Sử dụng toán tử cộng để hợp nhất một mảng thực sự hoạt động tốt nhất với một mảng kết hợp, nếu không, nó sẽ hợp nhất trên các chỉ mục được đánh số, điều này có thể dẫn đến một số kết quả không mong muốn hoặc kỳ lạ

Đây là một vài mảng, với một số phần tử giao nhau và một số phần tử khác nhau

$first + $second;

// ['a', 'b']
0

Thứ tự ưu tiên khi sử dụng toán tử + để hợp nhất các mảng này là từ trái sang phải. Vì vậy, nếu chúng ta thêm $array1 và $array2 như vậy, 'apple' sẽ được ưu tiên hơn 'banana' đối với phần tử trái cây

Hàm array_merge trong PHP kết hợp nhiều mảng thành một mảng duy nhất. Bạn có thể cung cấp cho hàm một mảng hoặc bao nhiêu tùy thích. Lưu ý rằng nếu các khóa của hai hoặc nhiều phần tử mảng giống nhau thì phần tử cuối cùng sẽ được ưu tiên

Ghi chú. Nếu bạn chỉ chuyển một mảng cho hàm array merge[] bằng các khóa số nguyên, thì hàm này sẽ trả về một array_merge mới trong PHP với các khóa số nguyên bắt đầu từ 0 và tăng thêm 1 cho mỗi giá trị

Khi hai hoặc nhiều phần tử mảng chia sẻ cùng một khóa, hàm này khác với hàm array_merge_recursive[]. Thay vì ghi đè các khóa, hàm array_merge_recursive[] tạo một mảng từ giá trị

Array_merge trong PHP là một hàm tích hợp giúp kết hợp hai hoặc nhiều mảng thành một mảng duy nhất. Hàm này kết hợp các phần tử hoặc giá trị từ hai hoặc nhiều mảng thành một mảng duy nhất. Các giá trị của một mảng được thêm vào cuối mảng trước đó trong quá trình hợp nhất. Hàm nhận làm tham số là danh sách các mảng cần được kết hợp, được phân tách bằng dấu phẩy và trả về một mảng mới với các giá trị được kết hợp của các mảng được truyền trong tham số

Nếu các khóa chuỗi trong cả hai mảng đầu vào giống nhau, thì giá trị sau của khóa đó sẽ ghi đè lên giá trị trước đó. Nếu các mảng chứa các khóa số, giá trị sau đó sẽ được thêm vào giá trị ban đầu thay vì ghi đè lên nó

Trong danh sách kết quả, các giá trị trong mảng đầu vào bằng các phím số sẽ được đánh số lại bằng các phím tăng dần bắt đầu từ 0

Chương trình sau đại học. Phát triển web đầy đủ ngăn xếp

hợp tác với Caltech CTME Đăng ký ngay

cú pháp

mảng array_merge[$array1, $array2,. , $mảng]

Giá trị tham số

  • mảng $1. Một trường bắt buộc chấp nhận một mảng
  • mảng $2. Một trường tùy chọn chấp nhận một mảng
  • mảng $3. Một trường tùy chọn chấp nhận một mảng

Hàm array_merge trong PHP lấy làm tham số, danh sách các mảng được phân tách bằng dấu phẩy cần được hợp nhất, như đã thấy trong cú pháp. Theo cú pháp, có n mảng [[$array1, $array2,. , $array] cách nhau bởi [‘,']. Bất kỳ số lượng mảng nào cũng có thể được truyền dưới dạng tham số

Giá trị trả về. Nó trả về một mảng mới chứa các phần tử của tất cả các mảng được truyền vào dưới dạng tham số, với các giá trị của một mảng được nối vào cuối mảng trước đó

Tính năng trộn mảng [] trong PHP được thể hiện trong các chương trình sau

Ví dụ

đầu ra

Hợp nhất hai mảng đơn giản

Khi hàm array_merge trong PHP được gọi cho hai mảng nữa, các giá trị của một mảng được thêm vào cuối mảng trước đó. Khi hai phần tử có cùng khóa chuỗi, giá trị sau được ưu tiên. Bắt đầu bằng số 0, các phím số nguyên sẽ được đánh số lại. Hàm array merge[] có thể được sử dụng để kết hợp hai mảng theo cách sau

Ví dụ

đầu ra

 

Truyền tham số

Nếu hàm array merge[] được gọi với các tham số và các khóa của tham số mảng là một số nguyên, thì các khóa trong mảng đầu ra sẽ được đánh số lại bắt đầu từ 0 và tăng thêm 1 cho mỗi biến tiếp theo. Ví dụ sau minh họa điều này

Ví dụ

đầu ra

điều hành công đoàn

Toán tử Union nối hai mảng_merge trong PHP với nhau bằng cách nối thêm mảng bên phải vào mảng bên trái. Nếu một khóa xuất hiện trong cả hai mảng, các phần tử của mảng bên trái sẽ được sử dụng, trong khi các phần tử tương ứng từ mảng bên phải sẽ bị bỏ qua. Hàmdefine[] được sử dụng để định nghĩa các hằng trong ví dụ sau

Ví dụ

đầu ra

 

Khóa học mới. Phát triển Full Stack cho người mới bắt đầu

Tìm hiểu Git Command, Angular, NodeJS, Maven và hơn thế nữa Đăng ký ngay

So sánh các mảng

Khi hai mảng có cùng cặp khóa-giá trị, chúng được gọi là giống hệt nhau. Một mảng được lập chỉ mục và một mảng kết hợp với các khóa tương ứng với chỉ mục của các phần tử trong phần đầu tiên được sử dụng trong ví dụ sau. Kết quả là cả hai đều bình đẳng

Ví dụ

đầu ra

Nâng cao sự nghiệp của bạn với tư cách là nhà phát triển MEAN stack với Nhà phát triển Web Full Stack - Chương trình Thạc sĩ MEAN Stack. đăng ký ngay bây giờ

Phần kết luận

Hàm array_merge trong PHP nối hai hoặc nhiều mảng lại với nhau. Nếu các mảng đầu vào có các khóa chuỗi phù hợp, giá trị sau sẽ được ưu tiên hơn giá trị trước đó. Nếu đầu vào array_merge trong PHP chứa các phím số, giá trị sau đó sẽ được thêm vào thay vì ghi đè. Nếu chỉ có một mảng, nó sẽ được lập chỉ mục bằng số và các khóa được lập chỉ mục lại liên tục

Bạn muốn học các kỹ năng của array_merge trong PHP để có một sự nghiệp tuyệt vời phía trước trong ngành? . Các khóa học do Simplelearn cung cấp cung cấp hướng dẫn đầy đủ về chủ đề này và bạn có cơ hội học hỏi từ các chuyên gia hoạt động trong lĩnh vực của họ, chứ không phải từ các giảng viên không liên quan

Nếu bạn cảm thấy rằng bạn đã biết về array_merge trong PHP, thì tại sao bạn không hướng tới việc nâng cao hơn nữa các kỹ năng của mình. Hãy xem Skill-Up, một nền tảng nơi hầu hết các khóa học theo yêu cầu đều có sẵn miễn phí và đảm bảo phát triển kỹ năng

Tìm Chương trình sau đại học của chúng tôi trong Chương trình đào tạo trực tuyến về phát triển web Full Stack tại các thành phố hàng đầu

NameDatePlacePost Chương trình sau đại học về Phát triển Web Full Stack Nhóm bắt đầu vào ngày 11 tháng 1 năm 2023,
Đợt cuối tuầnChi tiết CityView của bạnChương trình sau đại học về Phát triển Web Full Stack, SydneyCohort bắt đầu vào ngày 26 tháng 1 năm 2023,
Weekend batchSydneyView DetailsPost Graduate Program in Full Stack Web Development, MelbourneCohort starts on 15th Feb 2023,
Weekend batchMelbourneView Details

Giới thiệu về tác giả

đơn giản

Simplilearn là một trong những nhà cung cấp đào tạo trực tuyến hàng đầu thế giới về Tiếp thị kỹ thuật số, Điện toán đám mây, Quản lý dự án, Khoa học dữ liệu, CNTT, Phát triển phần mềm và nhiều công nghệ mới nổi khác

Làm cách nào để thêm nhiều giá trị mảng trong PHP?

Chức năng array_push đã được giới thiệu trong 4. 0. 0 phiên bản PHP. Nó có thể được sử dụng để thêm nhiều giá trị vào một mảng ngay cả khi mảng đó đã có các phần tử khác được chèn vào trong đó.

Làm cách nào để thêm mảng vào mảng trong PHP?

Hàm array_push[] chèn một hoặc nhiều phần tử vào cuối mảng . Mẹo. Bạn có thể thêm một giá trị hoặc bao nhiêu tùy thích. Ghi chú. Ngay cả khi mảng của bạn có các phím chuỗi, các phần tử được thêm vào của bạn sẽ luôn có các phím số [Xem ví dụ bên dưới].

+= có hoạt động trên các mảng trong PHP không?

Toán tử + trong PHP khi được áp dụng cho mảng sẽ thực hiện công việc của mảng UNION . mảng $arr += mảng $arr1; .

Làm cách nào để kết hợp hai mảng với các giá trị duy nhất trong PHP?

Bạn có thể sử dụng hàm PHP array_unique[] và hàm PHP array_merge[] để hợp nhất hai mảng thành một mảng mà không có giá trị trùng lặp trong .

Chủ Đề