Cita: Necesito realizar un procedimiento almacenado o funcion en mysql para llamarlo desde php, que reciba como parametro un array string [] y un id (INT), para que luego vaya recorriendo ese array, lo ingrese en una tabla INSERT INTO materiales (descripcion, idGrupo) y que retorne los id's de esos registros recien ingresados, ya sea en el mismo store o funcion o llamandolo desde otro.
No existen los tipos de datos Array, ni tampoco los Collection en MYSQL.
Es parcialmente posible hacer ealgo como loque quieres, pero no será e ficiente, ni óptimo.
En realidad, por lo que alcanzas a describir, ni siquera es una idea buena hacerlo como lo dices. Una lista de materiales que debe registrase debería ser ingresado iterativamente, y es más eficiente hacerlo de otro modo.
La pregunta es: ¿Qué tipo de materiales y en qué contexto se usarán que requiere (según tu) un array para generar el alta?