Inserir campo de ID gerado a partir do acionador, mas não transmitido

No MySQL, eu tenho um gatilho:

BEGIN
   IF (EXISTS(SELECT * FROM devices WHERE device_id = NEW.device_id)) THEN
    SET NEW.id = NULL;
   ELSE
INSERT INTO objects (object_type) VALUES ('3');
SET NEW.id = LAST_INSERT_ID();
   END IF;
END

Quando esse gatilho obtém um novo ID (da tabela de objetos), ele é inserido na coluna de ID da tabela de dispositivos.

Quando me refiro a ele (por exemplo, commysql_insert_id(); em PHP), está vazio.

Como posso retornar o ID da inserção do gatilho (LAST_INSERT_ID();) para a função em PHP como omysql_insert_id(); ?

questionAnswers(2)

yourAnswerToTheQuestion