Zend Framework URI Raum Codierung in PHP und Javascript
-
21-09-2019 - |
Frage
Ich habe ein Zend Framework URI wie / controller / action / var1 / Wert1 / var2 / Wert2.
-
Wert2 hat ein Leerzeichen in ihm. Wie soll ich es in PHP kodieren? Wenn ich urlencode mit value2, diese Konvertiten Raum in ‚+‘ anstelle von ‚% 20f‘. Ist das ok?
-
Diese Wert2 ist auch auf eine href Lage von Javascript Client-Seite hinzugefügt. Ich verwende es Escape-Funktion, aber wenn ich Link klicken ich weder sehen ‚+‘ noch ‚% 20f‘ in Firefox-Adressleiste. Obwohl, wenn ich sehe es in Firebug 'net' Tab, ich sehe% 20f.
Welche Funktionen sollte ich in PHP und Javascript?
Lösung
über Ihre erste Frage, dass der Unterschied zwischen urlencode
und rawurlencode
:
var_dump(urlencode("hello, world"));
erhalten Sie:
string 'hello%2C+world' (length=14)
Während
var_dump(rawurlencode("hello, world"));
Sie erhalten:
string 'hello%2C%20world' (length=16)
nehme ich beide in Ordnung sein sollte; aber ich fühle mich frei, es zu versuchen, nur für den Fall, -)
Über den zweiten Punkt: Firefox versucht, URLs „schönere“ und zeigt sie in einer für Menschen lesbaren Weise statt codiert zu machen - das ist schlecht für uns developpers, aber schön zu Endnutzern
Zum Beispiel, wenn ich diese URL in die Adressleiste des Firefox eingeben:
http://tests/temp/temp.php?a=hello%2C%20world
Wenn ich die Taste eingeben drücken, wird es automatisch übersetzt
http://tests/temp/temp.php?a=hello%2C%20world
Wenn es die Art und Weise funktioniert, wie Sie es tun (und, wie Sie eine kodierte URL mit Firebug sehen, es ist wahrscheinlich in Betrieb) , alles ist in Ordnung; -)