note 59328 added to function.rawurlencode
| From: | rickyale at ig dot com dot br | Date: | Sat, 03 Dec 2005 04:15:48 +0000 |
| Subject: | note 59328 added to function.rawurlencode | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-99507@lists.php.net to get a copy of this message | ||
As peter@nospam said, the microsoft uses an different table for encode string when sending data...
with some test i have created a table with this encodes for special char like á é í ó ú
here is it for those who need know what is this table..
the index of array is the ord() of a character..
use with chr(index) to know the char.. and replace with the value.....
var $ENCODE_TABLE = ARRAY(33=>'%21', 35=>'%23', 36=>'%24',
37=>'%25', 38=>'%26', 40=>'%28', 41=>'%29',
43=>'%2B', 44=>'%2C', 47=>'%2F', 58=>'%3A',
59=>'%3B', 60=>'%3C', 61=>'%3D', 62=>'%3E',
63=>'%3F', 91=>'%5B', 92=>'%5C', 93=>'%5D',
123=>'%7B', 124=>'%7C', 125=>'%7D',
142=>'%C5%BD', 192=>'%C3%80', 193=>'%C3%81',
194=>'%C3%82', 195=>'%C3%83', 196=>'%C3%84',
197=>'%C3%85', 199=>'%C3%87', 200=>'%C3%88',
201=>'%C3%89', 202=>'%C3%8A', 203=>'%C3%8B',
204=>'%C3%8C', 205=>'%C3%8D', 206=>'%C3%8E',
207=>'%C3%8F', 210=>'%C3%92', 211=>'%C3%93',
212=>'%C3%94', 213=>'%C3%95', 214=>'%C3%96',
217=>'%C3%99', 218=>'%C3%9A', 219=>'%C3%9B',
220=>'%C3%9C', 221=>'%C3%9D', 224=>'%C3%A0',
225=>'%C3%A1', 226=>'%C3%A2', 227=>'%C3%A3',
228=>'%C3%A4', 229=>'%C3%A5', 231=>'%C3%A7',
232=>'%C3%A8', 233=>'%C3%A9', 234=>'%C3%AA',
235=>'%C3%AB', 236=>'%C3%AC', 237=>'%C3%AD',
238=>'%C3%AE', 239=>'%C3%AF', 242=>'%C3%B2',
243=>'%C3%B3', 244=>'%C3%B4', 245=>'%C3%B5',
246=>'%C3%B6', 249=>'%C3%B9', 250=>'%C3%BA',
251=>'%C3%BB', 252=>'%C3%BC', 253=>'%C3%BD',
255=>'%C3%BF');
example::
function encode($text) {
while(list($ord, $enc) = each($ENCODE_TABLE)) {
$text = str_replace(chr($ord), $enc, $text);
}
return $text;
}
hope this help ...
----
Manual Page -- http://www.php.net/manual/en/function.rawurlencode.php
Edit -- http://master.php.net/manage/user-notes.php?action=edit+59328
Delete: added to the manual -- http://master.php.net/manage/user-notes.php?action=delete+59328&report=yes&reason=added+to+the+manual
Delete: bad code -- http://master.php.net/manage/user-notes.php?action=delete+59328&report=yes&reason=bad+code
Delete: spam -- http://master.php.net/manage/user-notes.php?action=delete+59328&report=yes&reason=spam
Delete: useless -- http://master.php.net/manage/user-notes.php?action=delete+59328&report=yes&reason=useless
Delete: non-english -- http://master.php.net/manage/user-notes.php?action=delete+59328&report=yes&reason=non-english
Delete: already in docs -- http://master.php.net/manage/user-notes.php?action=delete+59328&report=yes&reason=already+in+docs
Delete: other reasons -- http://master.php.net/manage/user-notes.php?action=delete+59328&report=yes
Reject -- http://master.php.net/manage/user-notes.php?action=reject+59328&report=yes
Search -- http://master.php.net/manage/user-notes.php