Php count(): tham số phải là một mảng hoặc một đối tượng thực hiện đếm được

Tôi gặp phải lỗi sau khi tạo sự kiện mới. Nó dường như có liên quan đến phiên bản 7. 2 của PHP

"đếm[]. Tham số phải là một mảng hoặc một đối tượng thực hiện D có thể đếm được. \WAMP\Apache24\htdocs\Projects\project_1\plugins\kurtjensen\mycalendar\formwidgets\rrule\partials_rrule. htm dòng 24"


Bên cạnh đó, cảm ơn bạn đã phát triển plug-in tuyệt vời này

Cập nhật lần cuối cách đây 4 năm

me28365

Vâng, tôi đang gặp vấn đề tương tự. Nó liên quan đến PHP 7. 2. Kể từ PHP 7. 2, bạn phải đề phòng hàm đếm[] trả về null

Thay đổi điều này. đếm[array_get[$f, 'WBYDAY']] thành một cái gì đó như thế này. array_get[$f, 'WBYDAY'] === null ? . đếm[array_get[$f, 'WBYDAY']]

Hy vọng, điều này sẽ được khắc phục vì tôi thực sự muốn sử dụng plugin này

BTW, cảm ơn vì plugin

Ngoài ra, n. morgana, đây dường như là một thay đổi cơ bản lớn đã ảnh hưởng khá nhiều đến mã nguồn php. Nếu hợp lý, bạn luôn có thể hạ cấp xuống PHP 7. 1. Đó là những gì tôi đã làm

Cập nhật lần cuối cách đây 4 năm

KurtJensen

@me28365 Cảm ơn bạn đã cung cấp gợi ý để giải quyết vấn đề này. Tôi đang chạy PHP 7. 0. 25 nên mình chưa test trên PHP 7. 2

Vui lòng cập nhật lên "1. 2. 19. Sửa lỗi "count[] Tham số phải là một mảng hoặc một đối tượng thực hiện Countable" để sửa lỗi

Vẫn có thể có sự cố do thư viện được bao gồm, vì vậy nếu bạn vẫn gặp phải sự cố "đếm[$x]", vui lòng đăng lại tại đây và xem xét thực hiện PR tại thư viện định kỳ. [ https. //github. com/simshaun/recurr/ ]

Ví dụ, tệp này có nhiều cách sử dụng "count[]"

https. //github. com/simshaun/recurr/blob/master/src/Recurr/Transformer/TextTransformer. php

dquiroga

Xin chào, tôi đã cập nhật lên php 7. 4 nhưng hệ thống của tôi đã hơn 7. Tôi đang làm việc với bản dựng 419, tôi đã cập nhật php nhưng quên cập nhật trước tháng 10, bây giờ tôi gặp lỗi tương tự, tôi có thể làm gì?

1-4 của 4

Vui lòng đăng nhập để trả lời thảo luận.

Mới nhất từ ​​blog

Giảm Giá Thứ Sáu Đen. Giảm 30% giấy phép, gói hàng năm và sản phẩm thị trường

CMS tháng 10 đang kỷ niệm Thứ Sáu Đen và Thứ Hai Điện Tử. Nhận chiết khấu cho các gói hàng năm và sản phẩm Marketplace

You can not get collect sub array count when use the key on only one sub array in an array:

$a = array["a"=>"appple", b"=>array['a'=>array[1,2,3],'b'=>array[1,2,3]]];
$b = array["a"=>"appple", "b"=>array[array['a'=>array[1,2,3],'b'=>array[1,2,3]], array[1,2,3],'b'=>array[1,2,3]], array['a'=>array[1,2,3],'b'=>array[1,2,3]]]];

echo count[$a['b']];  // 2 NOT 1, expect 1
echo count[$b['b']];  // 3,   expected

Bây giờ, khi biến $tombstones, ví dụ, là một NULL, điều này sẽ thất bại vì NULL không phải là một mảng cũng không phải là một đối tượng. Các phiên bản trước của PHP sẽ đánh đồng bất kỳ loại lỗi nào với giá trị 0 [hoặc FALSE], điều đó có nghĩa là bạn có thể bất cẩn hơn một chút khi kiểm tra, chẳng hạn như kiểm tra ở trên. Các phiên bản hiện đại của PHP đòi hỏi khắt khe hơn, ngay cả khi chúng thường chỉ đưa ra cảnh báo chứ không báo lỗi. Trong trường hợp này, cách khắc phục đơn giản là thay đổi dòng 302 thành

if [is_countable[$tombstones] && count[$tombstones] > 0] :

is_countable[] đã được giới thiệu trong PHP 7. 3 chính xác cho mục đích này

Có thể có nhiều trường hợp như thế này trong phần còn lại của mã, nhưng hiện tại, điều này dễ dàng khắc phục cảnh báo [và làm cho nó trở thành bằng chứng trong tương lai nếu các nhà phát triển PHP quyết định biến cảnh báo cụ thể này thành một lỗi nghiêm trọng mà họ thường mắc phải

FeedWordPress có một vài cập nhật [nó chỉ đơn giản là hoạt động…], nhưng có lẽ một trong những ngày này, các nhà phát triển của plugin tuyệt vời này có thể thực hiện sự điều chỉnh nhỏ này. Cảm ơn

Đang xem 7 trả lời - 1 đến 7 [trong tổng số 7]

  • Người bắt đầu chủ đề Gwyneth Llewelyn

    [@gwynethllewelyn]

    Tự ghi nhận. chỉ năm ngày trước, một bản sửa lỗi đã được đẩy lên kho lưu trữ GitHub nơi FeedWordPress tiếp tục được duy trì để giải quyết vấn đề tương tự này. https. //github. com/radgeek/feedwordpress/pull/110

    Nhà phát triển đã thực hiện thay đổi đã giải quyết cụ thể trường hợp khi $tombstones trở thành NULL bằng cách sử dụng mã tương thích với các phiên bản PHP trước 7. 3 [các trường hợp có thể khác không được kiểm tra]

    Bây giờ chúng ta chỉ cần xem phiên bản mới được phát hành công khai 😀

    Tác giả plugin C. Johnson

    [@radgeek]

    Xin chào, chỉ muốn cho bạn biết rằng tôi đã đẩy tất cả các thay đổi hiện có trong github vào kho lưu trữ plugin WordPress. Hãy cho tôi biết nếu điều này giải quyết được vấn đề cho bạn, nếu mọi thứ có vẻ như vậy, v.v. -C

    Người bắt đầu chủ đề Gwyneth Llewelyn

    [@gwynethllewelyn]

    Thật sự cảm ơn. Tôi đã quên kiểm tra chủ đề này, nhưng tôi tin rằng bạn có thể đánh dấu nó là đã đóng/đã sửa/đã giải quyết một cách an toàn

    Người bắt đầu chủ đề Gwyneth Llewelyn

    [@gwynethllewelyn]

    … rất tiếc. Bây giờ PHP phàn nàn về dòng 708 trong $a = array["a"=>"appple", b"=>array['a'=>array[1,2,3],'b'=>array[1,2,3]]];
    $b = array["a"=>"appple", "b"=>array[array['a'=>array[1,2,3],'b'=>array[1,2,3]], array[1,2,3],'b'=>array[1,2,3]], array['a'=>array[1,2,3],'b'=>array[1,2,3]]]];
    11. Thủ phạm là ở $a = array["a"=>"appple", b"=>array['a'=>array[1,2,3],'b'=>array[1,2,3]]];
    $b = array["a"=>"appple", "b"=>array[array['a'=>array[1,2,3],'b'=>array[1,2,3]], array[1,2,3],'b'=>array[1,2,3]], array['a'=>array[1,2,3],'b'=>array[1,2,3]]]];
    12, và dòng liên quan là

    $a = array["a"=>"appple", b"=>array['a'=>array[1,2,3],'b'=>array[1,2,3]]];
    $b = array["a"=>"appple", "b"=>array[array['a'=>array[1,2,3],'b'=>array[1,2,3]], array[1,2,3],'b'=>array[1,2,3]], array['a'=>array[1,2,3],'b'=>array[1,2,3]]]];
    13

    Từ PHP7. 3 trở đi giải pháp là

    $a = array["a"=>"appple", b"=>array['a'=>array[1,2,3],'b'=>array[1,2,3]]];
    $b = array["a"=>"appple", "b"=>array[array['a'=>array[1,2,3],'b'=>array[1,2,3]], array[1,2,3],'b'=>array[1,2,3]], array['a'=>array[1,2,3],'b'=>array[1,2,3]]]];
    14

    Đối với các phiên bản cũ hơn, có một giải pháp được cung cấp trên ghi chú cho is_countable[]

    Tác giả plugin C. Johnson

    [@radgeek]

    Cảm ơn vì đã nắm bắt được điều này. Tôi sẽ sửa lỗi cho dòng này. Tôi muốn biết liệu bạn có URL của nguồn cấp dữ liệu đưa ra cảnh báo này không? . Nhưng nếu bạn có URL, thì điều đó sẽ hữu ích vì nó cho tôi một trường hợp thử nghiệm cho một điều kiện mà tôi muốn ghi nhớ để kiểm tra. ]

    Cảm ơn. Tôi sẽ trả lời lại và đóng chủ đề này sau khi thay đổi được áp dụng

    WPTaTor

    [@wordpresstator]

    Xin chào

    Tôi có một cảnh báo tương tự. count[]* sau khi nâng cấp PHP lên 7. 4. https. //frg-oy. com/

    Bạn có thể giúp gì không?
    Cảm ơn trước.

    *Cảnh báo. đếm[]. Tham số phải là một mảng hoặc một đối tượng triển khai Có thể đếm được trong /homepages/29/d395190552/htdocs/clickandbuilds/FRGWorldwideOy/wp-includes/post-template. php trên dòng 317

    Count[] hoạt động như thế nào trong PHP?

    PHP. hàm đếm []. Hàm sẵn có này của PHP được dùng để đếm các phần tử hiện tại trong mảng . Hàm có thể trả về 0 cho biến đã được đặt thành một mảng trống. Ngoài ra, đối với biến không được đặt, hàm trả về 0.

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

    Để đếm tất cả các phần tử trong một mảng, PHP cung cấp các hàm count[] và sizeof[] . Cả hai hàm count[] và sizeof[] đều được sử dụng để đếm tất cả các phần tử trong một mảng và trả về 0 cho một biến đã được khởi tạo với một mảng trống. Đây là các hàm có sẵn của PHP.

    Tham số đếm là gì?

    Tham số đếm của phương thức GET trả về số mục khớp với URI đã chỉ định . Tham số đếm có thể hữu ích khi chỉ định các bộ sưu tập tài nguyên hoặc để nhận thông tin thống kê.

    Hàm PHP nào đếm tất cả các giá trị của một mảng?

    Hàm array_count_values[] đếm tất cả các giá trị của một mảng.

Chủ Đề