Невозможно использовать смещение строки в качестве массива в addressfield_widget_process () - PullRequest
0 голосов
/ 06 июня 2019

Я пытаюсь выяснить проблему в используемом модуле drupal - поле адреса. На addressfield.module я получаю предупреждение:

Примечание: преобразование массива в строку в addressfield_widget_process ()

, а затем ошибка:

Невозможно использовать смещение строки в качестве массива в addressfield_widget_process ().

Это происходит только тогда, когда я выбираю Страна Южная Африка (ZA) для php 7.1. Каким-то образом массив является строкой?!

Я попробовал некоторые решения из этой ошибки, но я не могу понять, почему происходит в этом случае или как это исправить.

function addressfield_widget_process($element) 
{
    foreach (element_children($element) as $key) {
        $element[$key]['#parents'] = $element['#parents'];
        $element[$key]['#parents'][count($element[$key]['#parents']) - 1] = $key;
    }
  }

  return $element;
}

Ошибка для этой строки:

$element[$key]['#parents'][count($element[$key]['#parents']) - 1] = $key;
...