Finally gave up on my own pretty-quotes function to use SmartyPants-PHP's one-stop SmartyPants()
... except it seems that it doesn't do pretty curly-quotes (just straight quotes) for strings submitted from post forms or get url's.
Tested curly quotes to show with SmartyPants on a string defined in the same doc. Replace that string with a get or post, and it's straight quotes.
Is there something I'm missing to get post/get fields to come up with curly quotes?