Я недавно перенес свой модуль на Drupal7 (в PHP версии 5.3.1) и теперь получаю следующие ошибки:
* Warning: array_flip() [function.array-flip]: Can only flip STRING and INTEGER values! in DrupalDefaultEntityController->load() (line 178 of C:\Users\akulkarni\Desktop\xampp\htdocs\servicecasting\includes\entity.inc).
* Warning: array_flip() [function.array-flip]: Can only flip STRING and INTEGER values! in DrupalDefaultEntityController->load() (line 178 of C:\Users\akulkarni\Desktop\xampp\htdocs\servicecasting\includes\entity.inc).
* Warning: array_flip() [function.array-flip]: Can only flip STRING and INTEGER values! in DrupalDefaultEntityController->load() (line 178 of C:\Users\akulkarni\Desktop\xampp\htdocs\servicecasting\includes\entity.inc).
* Warning: array_flip() [function.array-flip]: Can only flip STRING and INTEGER values! in DrupalDefaultEntityController->cacheGet() (line 354 of C:\Users\akulkarni\Desktop\xampp\htdocs\servicecasting\includes\entity.inc).
* Warning: array_flip() [function.array-flip]: Can only flip STRING and INTEGER values! in DrupalDefaultEntityController->load() (line 178 of C:\Users\akulkarni\Desktop\xampp\htdocs\servicecasting\includes\entity.inc).
* Warning: array_flip() [function.array-flip]: Can only flip STRING and INTEGER values! in DrupalDefaultEntityController->cacheGet() (line 354 of C:\Users\akulkarni\Desktop\xampp\htdocs\servicecasting\includes\entity.inc).
* Warning: array_flip() [function.array-flip]: Can only flip STRING and INTEGER values! in DrupalDefaultEntityController->load() (line 178 of C:\Users\akulkarni\Desktop\xampp\htdocs\servicecasting\includes\entity.inc).
* Warning: array_flip() [function.array-flip]: Can only flip STRING and INTEGER values! in DrupalDefaultEntityController->cacheGet() (line 354 of C:\Users\akulkarni\Desktop\xampp\htdocs\servicecasting\includes\entity.inc).
Я также пытался обновить другие модули и ядра до последних версий, как указано здесь http://drupal.org/node/1022736
сущность 7.x-1.x-dev (2011-янв-24),
просмотры 7.x-3.x-dev (2011-янв-22),
Drupal core 7.x-dev (2011-Jan-24),
profile2 7.x-1.0-beta1,
ссылки 7.x-2.x-dev (2011-янв-14),
ctools 7.x-1.0-alpha2
Я не могу понять, что именно вызывает эту ошибку?
Edit:
Согласно http://php.net/manual/en/function.array-flip.php,
array_flip () возвращает массив в обратном порядке, то есть ключи от trans
становятся значениями, а значения из trans становятся ключами.
Обратите внимание, что значения trans должны быть действительными ключами, то есть они должны быть либо целыми числами, либо строками. Предупреждение будет издано, если
значение имеет неправильный тип, и рассматриваемая пара ключ / значение не будет
быть перевернутым.
Я сделал var_dump($ids);
перед строкой 178 в entity.inc ($passed_ids = !empty($ids) ? array_flip($ids) : FALSE;
)
И мне кажется, что пара ключ / значение всегда имеет правильный формат (?).
array
0 =>
array
'nid' => string '6' (length=1)
array
0 =>
array
'uid' => string '1' (length=1)
array
0 => string '0' (length=1)
array
0 =>
array
'nid' => string '7' (length=1)
array
0 =>
array
'nid' => string '4' (length=1)
array
0 =>
array
'nid' => string '8' (length=1)