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?
![I’m an Impostor]()
This is the hardest thing I've ever had to write, much less admit to myself. I've written resignation letters from jobs I've loved, I've ended relationships, I've failed at a host of tasks, and let myself down in my life. All of those feelings were very...
![Write Better JavaScript with Promises]()
You've probably heard the talk around the water cooler about how promises are the future. All of the cool kids are using them, but you don't see what makes them so special. Can't you just use a callback? What's the big deal? In this article, we'll...
![Record Text Selections Using MooTools or jQuery AJAX]()
One technique I'm seeing more and more these days (CNNSI.com, for example) is AJAX recording of selected text. It makes sense -- if you detect users selecting the terms over and over again, you can probably assume your visitors are searching that term on Google...
![HTML5 Context Menus]()
One of the hidden gems within the HTML5 spec is context menus. The HTML5 context menu spec allows developers to create custom context menus for given blocks within simple menu and menuitem elements. The menu information lives right within the page so...
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″