It's not a limit of PHP, its a limit of HTTP protocol, so don't blame the Zend people.
HTTP is a stateless protocol, basically you make a request, the server sends back HTML, and closes the connection, and it's done. HTTP dictates that the first output that MUST be sent are HTTP headers, telling the brower what to expect so it knows how to handle the data it's getting.
Flash Actionscript is an ENTIRELY different situation, being that it's client side, doesn't have anything to do with HTTP headers, etc. etc.
If you plan ahead and write decent code there should never be a time when header ("Location: "); cannot be used... but then again, if you plan ahead most of the time you don't need to redirect people like this anyway... you can include() files most times instead. If you think about it, header("Location: "); really isn't very efficient, since you are causing the client to have to issue ANOTHER GET request to whatever server you are redirecting to.