Cita: mysql_insert_id() convertirá el tipo de retorno de la función nativa de MySQL en el API de C mysql_insert_id() a un tipo long (llamado int en PHP). Si su columna AUTO_INCREMENT tiene un tipo BIGINT (64 bits) la conversión puede resultar en un valor incorrecto. En su lugar, use la función interna de SQL en MySQL LAST_INSERT_ID() en una consulta SQL. Para más información sobre los valores máximos de integers, por favor vea la documentación de integer.
Por lo que entiendo es mejor usar la funcion nativa de mysql, por que al final de cuentas la funcion php hace uso de la misma funcion nativa de mysql, ademas que si es un autonumerico muy grande esa funcion regresa un valor erroneo