I did make a mention of this in Ched's thread, but PB can do what you're asking. By activating a spawner entity with a value of -1, you can "turn off" the spawning.
Here is an example script of how it would work (Assuming the spawner is set in the zone's IfUsed field):
:ALWAYS:activateifused=-1
:state=0,plrwithinzone=1:activateifused=1,state=1
:state=1,plrwithinzone=0:state=0
Notice that in the script, we are always activating the spawner with a value of -1, to keep the spawner turned OFF unless the player enters the zone. When the player enters the zone, it will activate the spawner ONCE to allow it to spawn ONE TIME. Then, the player must leave the zone and re-enter before it will spawn more.
Hope this helped you out in some way.
The one and only,
Only those who sow the seeds of their desires will reap their benefits later.
However, I have seeds of my own to tend to. I don't have time to be someone else's watering can.