Эта проблема может возникнуть, если вы определяете две разные схемы с тем же именем коллекции
Когда вы делаете $holeNumber = $holeNumber[$i];
, вы переинициализируете переменную и превращаете ее из массива в целое число. Просто измените $ holeNumber на новую переменную $ intHoleNumber или что-то еще. (И, конечно, другие переменные). Затем используйте новые переменные в функции связывания.