How many 3D textures does OpenGL support
As gllampert pointed out in the comments the value is hardware dependent. You can retrieve it with glGet, using GL_MAX_COMBINED_TEXTURE_IMAGE_UNIT. You can find how different hardware performs here.

However, in OpenGL 3 there is a lower bound of at least 48 simultaneously used textures, no matter which type. [source]