Làm cách nào để kiểm tra các giá trị mảng giống nhau trong PHP?

Làm cách nào để kiểm tra các giá trị mảng giống nhau trong PHP?

xt3mp0r~

Đăng ngày 21 tháng 9 năm 2010

xt3mp0r~

  • Làm cách nào để kiểm tra các giá trị mảng giống nhau trong PHP?

  • Các thành viên
    • 21

    • Chia sẻ

Đăng ngày 21 tháng 9 năm 2010

Có cách nào đơn giản để kiểm tra xem tất cả các giá trị trong một mảng có giống nhau với điều kiện if đơn giản không

 

Cái gì đó như

 

nếu(. một số mã. ) { //có, tất cả các giá trị đều giống nhau }else{ //không, tất cả đều không giống nhau }

 

Phiên bản PHP của tôi là 5. 2. 9-2

 

Bất kỳ trợ giúp sẽ được đánh giá cao.

Làm cách nào để kiểm tra các giá trị mảng giống nhau trong PHP?

Về cơ bản, tôi muốn kiểm tra xem các giá trị trong một mảng có bằng 1 không

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Làm cách nào để kiểm tra các giá trị mảng giống nhau trong PHP?
Làm cách nào để kiểm tra các giá trị mảng giống nhau trong PHP?

xà lách

Đăng ngày 21 tháng 9 năm 2010

xà lách

  • Làm cách nào để kiểm tra các giá trị mảng giống nhau trong PHP?
    Làm cách nào để kiểm tra các giá trị mảng giống nhau trong PHP?

  • cựu nhân viên
  • Làm cách nào để kiểm tra các giá trị mảng giống nhau trong PHP?
    • 1. 8k
  • Địa điểm. Edinburg, Scotland

    • Chia sẻ

Đăng ngày 21 tháng 9 năm 2010

if (count(array_unique($array)) <= 1) {

 

Logic là;

 

Câu cuối cùng của bạn làm mọi thứ khó hiểu, bạn có thực sự muốn kiểm tra xem mảng chỉ chứa 1 (có thể nhiều lần) không?

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Làm cách nào để kiểm tra các giá trị mảng giống nhau trong PHP?

xt3mp0r~

Đăng ngày 22 tháng 9 năm 2010

xt3mp0r~

  • Làm cách nào để kiểm tra các giá trị mảng giống nhau trong PHP?

  • Các thành viên
    • 21

  • Tác giả

    • Chia sẻ

Đăng ngày 22 tháng 9 năm 2010

Tất cả các giá trị phải là '1' để vượt qua điều kiện if

sự kết hợp giữa số lượng và mảng_unique hoạt động rất tốt

Cảm ơn nhiều

Liên kết để bình luận
Chia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

Cho dù bạn đang kiểm tra sự bằng nhau trên mảng phẳng hay mảng đa chiều (với phím số, phím kết hợp hoặc phím trộn), nếu bạn làm theo những điều này, việc so sánh các mảng trong PHP sẽ khá đơn giản

So sánh các mảng bằng cách sử dụng đẳng thức nghiêm ngặt ($a = ['a', 'b', 'c', [ 'foo' => 'bar' ]]; $b = ['a', 'b', 'c', [ 'foo' => 'bar' ]]; // the above is equivalent to: $a = ['a', 'b', 'c', [ 'foo' => 'bar' ]]; $b = [0 => 'a', 1 => 'b', 2 => 'c', 3 => [ 'foo' => 'bar' ]]; var_dump($a == $b); // true var_dump($a === $b); // true 0)

Hai mảng (ví dụ,

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = ['a', 'b', 'c', [ 'foo' => 'bar' ]];

// the above is equivalent to:

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = [0 => 'a', 1 => 'b', 2 => 'c', 3 => [ 'foo' => 'bar' ]];

var_dump($a == $b); // true
var_dump($a === $b); // true
1 và
$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = ['a', 'b', 'c', [ 'foo' => 'bar' ]];

// the above is equivalent to:

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = [0 => 'a', 1 => 'b', 2 => 'c', 3 => [ 'foo' => 'bar' ]];

var_dump($a == $b); // true
var_dump($a === $b); // true
2) hoàn toàn bằng nhau (i. e.
$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = ['a', 'b', 'c', [ 'foo' => 'bar' ]];

// the above is equivalent to:

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = [0 => 'a', 1 => 'b', 2 => 'c', 3 => [ 'foo' => 'bar' ]];

var_dump($a == $b); // true
var_dump($a === $b); // true
3) khi nào

  1. chúng có cùng cặp khóa/giá trị;
  2. khóa/giá trị theo cùng một thứ tự;
  3. các giá trị thuộc cùng một loại

So sánh các mảng bằng cách sử dụng đẳng thức lỏng lẻo ($a = ['a', 'b', 'c', [ 'foo' => 'bar' ]]; $b = ['a', 'b', 'c', [ 'foo' => 'bar' ]]; // the above is equivalent to: $a = ['a', 'b', 'c', [ 'foo' => 'bar' ]]; $b = [0 => 'a', 1 => 'b', 2 => 'c', 3 => [ 'foo' => 'bar' ]]; var_dump($a == $b); // true var_dump($a === $b); // true 4)

Hai mảng (ví dụ,

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = ['a', 'b', 'c', [ 'foo' => 'bar' ]];

// the above is equivalent to:

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = [0 => 'a', 1 => 'b', 2 => 'c', 3 => [ 'foo' => 'bar' ]];

var_dump($a == $b); // true
var_dump($a === $b); // true
1 và
$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = ['a', 'b', 'c', [ 'foo' => 'bar' ]];

// the above is equivalent to:

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = [0 => 'a', 1 => 'b', 2 => 'c', 3 => [ 'foo' => 'bar' ]];

var_dump($a == $b); // true
var_dump($a === $b); // true
2) lỏng lẻo bằng nhau (i. e.
$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = ['a', 'b', 'c', [ 'foo' => 'bar' ]];

// the above is equivalent to:

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = [0 => 'a', 1 => 'b', 2 => 'c', 3 => [ 'foo' => 'bar' ]];

var_dump($a == $b); // true
var_dump($a === $b); // true
7) khi chúng có cùng cặp khóa/giá trị bất kể thứ tự và/hoặc loại của chúng

Việc sử dụng đẳng thức lỏng lẻo thường không được khuyến khích, bạn nên luôn cố gắng sử dụng đẳng thức nghiêm ngặt. Điều này có nghĩa là bạn nên đảm bảo kiểu và thứ tự của các phần tử mảng mà bạn đang so sánh giống nhau

Ví dụ về so sánh mảng

Các ví dụ sau đây cho thấy kết quả so sánh mảng bằng cách sử dụng các đẳng thức nghiêm ngặt và lỏng lẻo

Mảng có các cặp khóa/giá trị giống nhau theo cùng thứ tự với các giá trị cùng loại

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

// the above is equivalent to:

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

var_dump($a == $b); // true
var_dump($a === $b); // true
$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = ['a', 'b', 'c', [ 'foo' => 'bar' ]];

// the above is equivalent to:

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = [0 => 'a', 1 => 'b', 2 => 'c', 3 => [ 'foo' => 'bar' ]];

var_dump($a == $b); // true
var_dump($a === $b); // true

Mảng có các cặp khóa/giá trị giống nhau theo thứ tự với các loại khóa khác nhau

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = ['a', 'b', 'c', [ 'foo' => 'bar' ]];

// the above is equivalent to:

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = [0 => 'a', 1 => 'b', 2 => 'c', 3 => [ 'foo' => 'bar' ]];

var_dump($a == $b); // true
var_dump($a === $b); // true
0

Từ ví dụ trên, bạn có thể thấy rằng các loại khóa không được so sánh nghiêm ngặt theo một trong hai đẳng thức

Mảng không có cặp khóa/giá trị giống nhau

Trong các ví dụ sau, hai mảng có khóa khác nhau. Do đó, các cặp khóa/giá trị của hai mảng không bằng nhau trong một trong hai phép so sánh bằng

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = ['a', 'b', 'c', [ 'foo' => 'bar' ]];

// the above is equivalent to:

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = [0 => 'a', 1 => 'b', 2 => 'c', 3 => [ 'foo' => 'bar' ]];

var_dump($a == $b); // true
var_dump($a === $b); // true
1
$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = ['a', 'b', 'c', [ 'foo' => 'bar' ]];

// the above is equivalent to:

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = [0 => 'a', 1 => 'b', 2 => 'c', 3 => [ 'foo' => 'bar' ]];

var_dump($a == $b); // true
var_dump($a === $b); // true
2

Mảng không cùng kiểu

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = ['a', 'b', 'c', [ 'foo' => 'bar' ]];

// the above is equivalent to:

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = [0 => 'a', 1 => 'b', 2 => 'c', 3 => [ 'foo' => 'bar' ]];

var_dump($a == $b); // true
var_dump($a === $b); // true
3____14
$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = ['a', 'b', 'c', [ 'foo' => 'bar' ]];

// the above is equivalent to:

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = [0 => 'a', 1 => 'b', 2 => 'c', 3 => [ 'foo' => 'bar' ]];

var_dump($a == $b); // true
var_dump($a === $b); // true
5

Thay vì sử dụng đẳng thức lỏng lẻo, bạn có thể sử dụng một trong các hàm sắp xếp mảng (chẳng hạn như

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = ['a', 'b', 'c', [ 'foo' => 'bar' ]];

// the above is equivalent to:

$a = ['a', 'b', 'c', [ 'foo' => 'bar' ]];
$b = [0 => 'a', 1 => 'b', 2 => 'c', 3 => [ 'foo' => 'bar' ]];

var_dump($a == $b); // true
var_dump($a === $b); // true
00, v.v. ) để sắp xếp cả hai mảng, sau đó so sánh chúng với đẳng thức nghiêm ngặt

Làm cách nào để kiểm tra tất cả các giá trị mảng giống nhau trong PHP?

Hàm array_unique() "lấy một mảng đầu vào và trả về một mảng mới không có giá trị trùng lặp. " Không, 1 sẽ được trả về nếu TẤT CẢ giá trị trong mảng giống nhau.

Làm cách nào để kiểm tra xem hai mảng có cùng giá trị PHP không?

# So sánh các mảng sử dụng đẳng thức nghiêm ngặt ( === ) . e. $a === $b ) khi. chúng có cùng cặp khóa/giá trị; .

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

Hàm array_intersect() so sánh giá trị của hai (hoặc nhiều) mảng và trả về kết quả khớp. Hàm này so sánh các giá trị của hai hoặc nhiều mảng và trả về một mảng chứa các mục từ mảng1 có trong mảng2, mảng3, v.v.