Should I store the readings into an array?
That's how I'd do it, something like this.
byte vals [8];
for (i = 0; i < 8; i++) {
setMuxAddress(i); // does whatever is required to set the three select inputs on the MUX
vals[i] = digitalRead(muxPin);
}
Rob