Ah, the good old slot machine
The best way to go about this is to "model" your slot machine mathematically, and then control your reels form there and not the opposite. That's the mandatory approach for a real implementation of a slot ( especially if you will plug your slot to a server giving you the odds and results). The reason is that todays slot machines have reels with more slots than you can physically put on the physical rotating reel ( because of the odds... they don't want you to win, remember?...).
If however you don't wanna go that far, a collider acting as the result "Area" will help you, so your second solution is a good starting point, but I would not use tags.
If each cubes has a fsm attached with a reference to what it's supposed to show, you can then query the result area collider for the current cubes currently colliding or something, then you know which cubes are front. on them cubes, call a global event or query for a the variable mentionning the symbol.
You will most definitly need to fiddle with ArrayMaker if you want to deal with arrays and hashtables. Slot machines is the perfect example of a good use of arrayMaker. you can define easily each slots and what each reels should contains and in what order, then store winning results combinations as well, store the current result, compare them together and detect winning combinations. I would not even try to build a working slot machine without this actually
much much arrays and hashtable involved when building a slot machine.
https://hutonggames.fogbugz.com/?W715bye,
Jean