PHP 7,3 - количество (NULL) делает php сценарий к тайм-ауту - PullRequest
0 голосов
/ 14 апреля 2020

У меня возникла следующая проблема:

Я переместил некоторый код с сервера PHP 7.1 на другой с PHP 7.3.16.

В некоторых сценариях был count функция для массива, который может иметь значение NULL .

Согласно PHP count () docs :

Возвращаемые значения:

Возвращает количество элементов в array_or_countable. Если параметр не является ни массивом, ни объектом с реализованным интерфейсом Countable, возвращается 1. Есть одно исключение, если array_or_countable имеет значение NULL, будет возвращено 0.

В PHP 7.1 все было в порядке.

Теперь в PHP 7.3 скрипт полностью висит в этой строке до истечения времени ожидания.

Затем выдается следующее предупреждение: PHP Предупреждение: count (): Параметр должен быть массивом или объектом, реализующим Счетное

Код, который всегда висит:

<?php
  /* .... code  ..... */
  $array = null;  //this array becomes NULL
  
  $x = count($array);
  echo ''.$x;

Я искал и ничего не нашел. Спасибо.

Небольшое обновление:

Сервер выше - Ubuntu 18.04 LTS.

Я пробовал то же самое на сервере CentosOS 7 с PHP 7.3.15 и функция работает как положено.

Что может быть не так в Ubuntu?

...