Change the PHP Query String Variable Separator Using php.ini
As you probably know, the default PHP query string variable separator is the "&" character. One annoyance with using the "&" character is that, in order to have valid XHTML syntax, you need to output your &'s as "&". If you'd like to avoid all of that mess, you can simply change the separating character to a semi-colon (;). Here's how:
The PHP
//inside the php.ini file
arg_separator.input = ";"
//example URL: /page.php?key1=value1;key2=value2;key3=value3
There you go -- one easy step to outputting cleaner URLs. Do any of you use this method?
![An Interview with Eric Meyer]()
Your early CSS books were instrumental in pushing my love for front end technologies. What was it about CSS that you fell in love with and drove you to write about it?
At first blush, it was the simplicity of it as compared to the table-and-spacer...
![CSS @supports]()
Feature detection via JavaScript is a client side best practice and for all the right reasons, but unfortunately that same functionality hasn't been available within CSS. What we end up doing is repeating the same properties multiple times with each browser prefix. Yuck. Another thing we...
![Simple Image Lazy Load and Fade]()
One of the quickest and easiest website performance optimizations is decreasing image loading. That means a variety of things, including minifying images with tools like ImageOptim and TinyPNG, using data URIs and sprites, and lazy loading images. It's a bit jarring when you're lazy loading images and they just...
![CSS @supports]()
Feature detection via JavaScript is a client side best practice and for all the right reasons, but unfortunately that same functionality hasn't been available within CSS. What we end up doing is repeating the same properties multiple times with each browser prefix. Yuck. Another thing we...
Personally I set it to & which validates fine.
and if you don’t have access to the ini file the following works:
ini_set('arg_separator.output','&');pretty useful
Didnt know this one, thx ;)
And how Search engines see on this trick?
@wsr: Search engine sees it as the same — you wouldn’t be penalized by this.
@david: Maybe, but standart is “&” and many SE use this symbol to explode and analyze query string…
I think this will break a 3rd party CMS(like wordpress).
Think SEO
If you really want to display pretty URLs it’s better to use mod_rewrite.
Keep in mind that XML invalidates the & symbol when it’s located in the href tag.
To validate your XML you have to supply & EG: href=”?i=1&x=2″
When using this method the return value in the URI will return as “&”, and if you are using relative URLs in your application navigation, this will invalidate the DOM generated XML in most browsers and stop page load in Google Chrome (Safari).
Result: href=”/mypage.php?i=1&x=2″
Returns – EntityRef: expecting ‘;’
To fix the above the first example href=”?i=1&x=2″ should read with &
like so
href=”?i=1&x=2″