Running Linux and not OS/X so "open" so I used "lynx" instead. Also removed the php dependency with sed.
function duckduckgo {
query=echo $* | sed -f ~/bin/url_escape.sed
lynx 'https://duckduckgo.com/?q='$query
}
alias '?'='duckduckgo'
$ cat bin/url_escape.sed
# sed url escaping s:%:%25:g s: :%20:g s:<:%3C:g s:>:%3E:g s:#:%23:g s:{:%7B:g s:}:%7D:g s:|:%7C:g s:\:%5C:g s:^:%5E:g s:~:%7E:g s:[:%5B:g s:]:%5D:g s:`:%60:g s:;:%3B:g s:/:%2F:g s:?:%3F:g s^:^%3A^g s:@:%40:g s:=:%3D:g s:&:%26:g s:\$:%24:g s:!:%21:g s:*:%2A:g
Stack Overflow example search
$ ? !so url_escape.sed