Finding the proper
proj4-string can be a bit funny.
Such strings provide information on both the ellipsoid and how coordinates on the surface are arranged. Deciphering your example gives us the following two core elements:
+proj=utm +zone=18 +datum=WGS84 +units=m +no_defs +ellps=WGS84
projection is UTM zone 18 with a WGS84 datum
ellipsoid is WGS84
When you want to use ETRS89 (EPSG entry) instead of WGS84 (EPSG entry), one would think that it was a simple matter of changing those parameters, with the key bit of knowledge being that it is not referred to as
+proj=utm +zone=18 +datum=GRS80 +units=m +no_defs +ellps=GRS80
However, it is unfortunately not that simple, because not all systems are defined everywhere. The ETRS89 system is designed for data on the Eurasian plate, and as such it is only properly defined for data in that region.
For data in Spain (mentioned in comments), the string would likely be:
+proj=utm +zone=29 +ellps=GRS80 +units=m +no_defs
+proj=utm +zone=30 +ellps=GRS80 +units=m +no_defs
Note that the datum is not defined here, as it is not actually required.
See wiki for additional details on the relationship between ETRS89, GRS80 and WGS84.
If you wish to use the data in the same system, one of the datasets should be reprojected to match the other one, just to be safe. Most systems should deal with the difference seamlessly internally, but no need to run the risk of encountering strange errors due to inconsistent use of georeferences.
Finally, most datasets contain these strings, so hard-coding the string is usually not recommended.