Я получаю следующую ошибку в PHP
Notice undefined offset 1: in C:\wamp\www\includes\imdbgrabber.php line 36 Вот код PHP, который вызывает его:
 <?php # ... function get_match($regex, $content) { preg_match($regex,$content,$matches); return $matches[1]; // ERROR HAPPENS HERE } 
Что означает ошибка?
  Если preg_match не нашел совпадения, $matches – пустой массив.  Поэтому вы должны проверить, было ли preg_match обнаружено совпадение перед доступом к $matches[0] , например: 
 function get_match($regex,$content) { if (preg_match($regex,$content,$matches)) { return $matches[0]; } else { return null; } } 
Как воспроизвести эту ошибку в PHP:
Создайте пустой массив и попросите значение, заданное таким ключом:
 php> $foobar = array(); php> echo gettype($foobar); array php> echo $foobar[0]; PHP Notice: Undefined offset: 0 in /usr/local/lib/python2.7/dist-packages/phpsh/phpsh.php(578) : eval()'d code on line 1 
Что случилось?
Вы попросили массив дать вам значение, указанное ключом, который он не содержит. Он даст вам значение NULL, а затем поместите вышеуказанную ошибку в errorlog.
  Он искал ваш ключ в массиве и нашел undefined . 
Как сделать ошибку не так?
Спросите, существует ли ключ прежде, чем вы попросите его значение.
 php> echo array_key_exists(0, $foobar) == false; 1 
Если ключ существует, то получите значение, если оно не существует, нет необходимости запрашивать его значение.
Неопределенная ошибка смещения в PHP напоминает «ArrayIndexOutOfBoundException» в Java.
пример:
 <?php $arr=array('Hello','world');//(0=>Hello,1=>world) echo $arr[2]; ?> 
ошибка: неопределенное смещение 2
Это означает, что вы имеете в виду ключ массива, который не существует. «Смещение» относится к целочисленному ключу числового массива, а «индекс» относится к строковому ключу ассоциативного массива.
Неопределенное смещение означает, что есть пустой ключ массива, например:
 $a = array('Felix','Jon','Java'); // This will result in an "Undefined offset" because the size of the array // is three (3), thus, 0,1,2 without 3 echo $a[3]; 
Вы можете решить проблему, используя цикл (while):
 $i = 0; while ($row = mysqli_fetch_assoc($result)) { // Increase count by 1, thus, $i=1 $i++; $groupname[$i] = base64_decode(base64_decode($row['groupname'])); // Set the first position of the array to null or empty $groupname[0] = ""; }