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?
![Designing for Simplicity]()
Before we get started, it's worth me spending a brief moment introducing myself to you. My name is Mark (or @integralist if Twitter happens to be your communication tool of choice) and I currently work for BBC News in London England as a principal engineer/tech...
![JavaScript Promise API]()
While synchronous code is easier to follow and debug, async is generally better for performance and flexibility. Why "hold up the show" when you can trigger numerous requests at once and then handle them when each is ready? Promises are becoming a big part of the JavaScript world...
![Chris Coyier’s Favorite CodePen Demos II]()
Hey everyone! Before we get started, I just want to say it's damn hard to pick this few favorites on CodePen. Not because, as a co-founder of CodePen, I feel like a dad picking which kid he likes best (RUDE). But because there is just so...
![Sara Soueidan’s Favorite CodePen Demos]()
A few months ago, Chris Coyier shared his favorite CodePen demos right here on David's blog. A while back David asked me to share some of my favorite pens too, so here are some of the demos that have blown my mind in the past...
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″