I ran into an interesting “bug” in Twitter Tools last night that I traced back to http_build_query()
. I expected that the query strings generated by this function used &
as a separator for the key=value
pairs, but on one of our test servers, the separator being used was &
. This is a php.ini config setting, so my expectation was clearly based on false assumptions. If you want to make sure that you get a &
separator, you can pass it in as the 3rd parameter.
You’ll find this is particularly important if you’re making requests for remote data from within WordPress via wp_remote_get()
or similar technique. If you are working on something that is run within WordPress, you can look at using add_query_arg()
as an alternative to this as well.