What happens when you try to add a variable into APC and the APC cache is full? Does it automatically remove least used variable from the cache?
According to APC: Runtime Configuration, "In the event of a cache running out of available memory, the cache will be completely expunged if ttl is equal to 0. Otherwise, if the ttl is greater than 0, APC will attempt to remove expired entries."
So if there is a non-zero TTL, it will remove entries whose time to live has passed. ;) Otherwise, it will remove the entire cache.
I notice this doesn't really address what happens if the cache runs out of memory and you have an excessively high TTL.