Convert accented UTF8 codes to characters using PHP - php

How can i convert string like this
%C4%BE%C5%A1%C4%8D%C5%A5%C5%BE-%C3%BD%C3%A1%C3%AD%C3%A9
to this:
ľščťž-ýáíé
using PHP ?

Just use urldecode() function, because you have url encoded string.
$encoded = '%C4%BE%C5%A1%C4%8D%C5%A5%C5%BE-%C3%BD%C3%A1%C3%AD%C3%A9';
$decoded = urldecode($encoded);
echo $decoded;
outputs:
ľščťž-ýáíé

Just use urldecode() function in php. Use the code below
<?php
$string = "%C4%BE%C5%A1%C4%8D%C5%A5%C5%BE-%C3%BD%C3%A1%C3%AD%C3%A9";
echo urldecode($string); // Outputs ľščťž-ýáíé
?>
Hope this helps you

Related

Decode string with \x in PHP that has char encoded over 255

My problem is about string decoding.
Let's assume a string like:
$str = "\xce\xbb\xc6\x9b\xc2\xac\xe2\x88\xa7\xe2\x9f\x91\xe2\x88\xa8\xe2\x9f\x87\xc3\xb7 \xe2\x82\xac\xc2\xbd\xe2\x88\x86\xc3\xb8\xe2\x86\x94\xc2\xa2\xe2\x8c\x90\xc3\xa6";
I want to decode it and to look like that:
λƛ¬∧⟑∨⟇÷ €½∆ø↔¢⌐æ
I tried to use
utf8_encode(utf8_encode($str));
But it's not what was expected.
In python something like that works:
_str = b"\xce\xbb\xc6\x9b\xc2\xac\xe2\x88\xa7\xe2\x9f\x91\xe2\x88\xa8\xe2\x9f\x87\xc3\xb7 \xe2\x82\xac\xc2\xbd\xe2\x88\x86\xc3\xb8\xe2\x86\x94\xc2\xa2\xe2\x8c\x90\xc3\xa6"
_str = _str.decode()
print(_str)
You don't need to decode that. This is legal notation for strings in PHP.
$str = "\xce\xbb\xc6\x9b\xc2\xac\xe2\x88\xa7\xe2\x9f\x91\xe2\x88\xa8\xe2\x9f\x87\xc3\xb7 \xe2\x82\xac\xc2\xbd\xe2\x88\x86\xc3\xb8\xe2\x86\x94\xc2\xa2\xe2\x8c\x90\xc3\xa6";
echo $str; //λƛ¬∧⟑∨⟇÷ €½∆ø↔¢⌐æ
https://3v4l.org/0e0Po

How to convert 水瀬いのり to %e6%b0%b4%e7%80%ac%e3%81%84%e3%81%ae%e3%82%8a in php?

i wonder, how to convert character 水瀬いのり to %e6%b0%b4%e7%80%ac%e3%81%84%e3%81%ae%e3%82%8a in php?
also 보이프렌드 to %eb%b3%b4%ec%9d%b4%ed%94%84%eb%a0%8c%eb%93%9c ?
thanks
This one would help urlencode
See here for an example:
$str = '水瀬いのり';
var_dump( urlencode($str) );
If you must use the urlencode() function for that.
echo urlencode('보이프렌드');
// output: %EB%B3%B4%EC%9D%B4%ED%94%84%EB%A0%8C%EB%93%9C
If you really need that the result will be in lowercase then you also must to use the strtolower() function.
echo strtolower(urlencode('보이프렌드'));
// output: %eb%b3%b4%ec%9d%b4%ed%94%84%eb%a0%8c%eb%93%9c

json_encode not working with urldecode

json_encode not working with urldecode. Please give some solution
<?php
$decode_str = array();
$str = "%ED%A0%BD%ED%BA%97%D9%BE%D8%B1%D8%A7%DB%8C%D8%AF+89%D8%A8%D8%AF%D9%88%D9%86+%D8%B1%D9%86%DA%AF.+%D8%AA%DA%A9+%D8%B3%D9%88%D8%B2%ED%A0%BD%ED%BA%97";
$decode_str['output'] = urldecode($str);
echo json_encode($decode_str);
?>
If you add echo json_last_error_msg(); to the end of it, you will see that there is a json error.
Malformed UTF-8 characters, possibly incorrectly encoded
The string you are trying to encode has malformed UTF-8 Characters. You will need to fix the characted encoding before you can encode it into json.
Use utf8_decode() as well.
$decode_str = array();
$str = "%ED%A0%BD%ED%BA%97%D9%BE%D8%B1%D8%A7%DB%8C%D8%AF+89%D8%A8%D8%AF%D9%88%D9%86+%D8%B1%D9%86%DA%AF.+%D8%AA%DA%A9+%D8%B3%D9%88%D8%B2%ED%A0%BD%ED%BA%97";
$decode_str['output'] = utf8_decode(urldecode($str));
echo json_encode($decode_str);

Decode string php

I am trying to decode a string in PHP but I have not idea what the encoding is.
My string is
\x5B\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20d\x27Asni\x5Cu00e8res\x20sur\x20Seine\x20Belfort\x22,\x22id\x22\x3A\x225337\x22,\x22lati\x22\x3A\x2248.907864\x22,\x22long\x22\x3A\x222.268167\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20d\x27Asni\x5Cu00e8res\x20sur\x20Seine\x20Les\x20Hauts\x20d\x27Asni\x5Cu00e8res\x22,\x22id\x22\x3A\x225338\x22,\x22lati\x22\x3A\x2248.925983\x22,\x22long\x22\x3A\x222.274256\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Bagneux\x20Port\x20Galand\x22,\x22id\x22\x3A\x225339\x22,\x22lati\x22\x3A\x2248.788372\x22,\x22long\x22\x3A\x222.317539\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Bois\x20Colombes\x20Les\x20Bruy\x5Cu00e8res\x22,\x22id\x22\x3A\x225340\x22,\x22lati\x22\x3A\x2248.908581\x22,\x22long\x22\x3A\x222.262088\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Colombes\x20Foss\x5Cu00e9\x20Jean\x22,\x22id\x22\x3A\x225342\x22,\x22lati\x22\x3A\x2248.93106\x22,\x22long\x22\x3A\x222.267059\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Colombes\x20Wiener\x22,\x22id\x22\x3A\x225343\x22,\x22lati\x22\x3A\x2248.915141\x22,\x22long\x22\x3A\x222.246733\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Courbevoie\x20\x2D\x20Quartier\x20de\x20B\x5Cu00e9con\x22,\x22id\x22\x3A\x225344\x22,\x22lati\x22\x3A\x2248.901328\x22,\x22long\x22\x3A\x222.265769\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Courbevoie\x20\x2D\x20Quartier\x20Faubourg\x20de\x20l\x27Arche\x22,\x22id\x22\x3A\x225345\x22,\x22lati\x22\x3A\x2248.897737\x22,\x22long\x22\x3A\x222.238265\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20Meudon\x20la\x20For\x5Cu00eat\x20Place\x20Centrale\x22,\x22id\x22\x3A\x225346\x22,\x22lati\x22\x3A\x2248.787749\x22,\x22long\x22\x3A\x222.227974\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2010\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224463\x22,\x22lati\x22\x3A\x2248.871982\x22,\x22long\x22\x3A\x222.357889\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2012\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224464\x22,\x22lati\x22\x3A\x2248.840246\x22,\x22long\x22\x3A\x222.388204\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2014\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224465\x22,\x22lati\x22\x3A\x2248.832864\x22,\x22long\x22\x3A\x222.326462\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2015\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224475\x22,\x22lati\x22\x3A\x2248.841647\x22,\x22long\x22\x3A\x222.299668\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2016\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224466\x22,\x22lati\x22\x3A\x2248.863973\x22,\x22long\x22\x3A\x222.277212\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2017\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224467\x22,\x22lati\x22\x3A\x2248.883034\x22,\x22long\x22\x3A\x222.32408\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2018\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224468\x22,\x22lati\x22\x3A\x2248.892666\x22,\x22long\x22\x3A\x222.337346\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2019\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224461\x22,\x22lati\x22\x3A\x2248.876334\x22,\x22long\x22\x3A\x222.39318\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2020\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224469\x22,\x22lati\x22\x3A\x2248.864976\x22,\x22long\x22\x3A\x222.39871\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x205\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224471\x22,\x22lati\x22\x3A\x2248.846319\x22,\x22long\x22\x3A\x222.344516\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x207\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224472\x22,\x22lati\x22\x3A\x2248.856888\x22,\x22long\x22\x3A\x222.319964\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x208\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224473\x22,\x22lati\x22\x3A\x2248.877862\x22,\x22long\x22\x3A\x222.317804\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x209\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224474\x22,\x22lati\x22\x3A\x2248.872497\x22,\x22long\x22\x3A\x222.340366\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20d\x27ALFORTVILLE\x22,\x22id\x22\x3A\x225392\x22,\x22lati\x22\x3A\x2248.80529\x22,\x22long\x22\x3A\x222.420021\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20d\x27ARCUEIL\x22,\x22id\x22\x3A\x225032\x22,\x22lati\x22\x3A\x2248.805973\x22,\x22long\x22\x3A\x222.336826\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20ASNIERES\x20SUR\x20SEINE\x22,\x22id\x22\x3A\x224799\x22,\x22lati\x22\x3A\x2248.910354\x22,\x22long\x22\x3A\x222.289417\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20AUBERVILLIERS\x22,\x22id\x22\x3A\x224825\x22,\x22lati\x22\x3A\x2248.914652\x22,\x22long\x22\x3A\x222.381673\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20BAGNEUX\x22,\x22id\x22\x3A\x224800\x22,\x22lati\x22\x3A\x2248.798652\x22,\x22long\x22\x3A\x222.304296\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20BAGNOLET\x22,\x22id\x22\x3A\x224827\x22,\x22lati\x22\x3A\x2248.868921\x22,\x22long\x22\x3A\x222.417979\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20BOIS\x20COLOMBES\x22,\x22id\x22\x3A\x224824\x22,\x22lati\x22\x3A\x2248.914476\x22,\x22long\x22\x3A\x222.267797\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20BOULOGNE\x20BILLANCOURT\x22,\x22id\x22\x3A\x224801\x22,\x22lati\x22\x3A\x2248.835388\x22,\x22long\x22\x3A\x222.24031\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CACHAN\x22,\x22id\x22\x3A\x224859\x22,\x22lati\x22\x3A\x2248.794443\x22,\x22long\x22\x3A\x222.331244\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CHARENTON\x20LE\x20PONT\x22,\x22id\x22\x3A\x225395\x22,\x22lati\x22\x3A\x2248.819851\x22,\x22long\x22\x3A\x222.415667\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CHATENAY\x20MALABRY\x22,\x22id\x22\x3A\x224802\x22,\x22lati\x22\x3A\x2248.767087\x22,\x22long\x22\x3A\x222.277421\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CHATILLON\x22,\x22id\x22\x3A\x225382\x22,\x22lati\x22\x3A\x2248.799868\x22,\x22long\x22\x3A\x222.289823\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CHATOU\x22,\x22id\x22\x3A\x224531\x22,\x22lati\x22\x3A\x2248.890074\x22,\x22long\x22\x3A\x222.157537\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CHOISY\x20LE\x20ROI\x22,\x22id\x22\x3A\x224861\x22,\x22lati\x22\x3A\x2248.762448\x22,\x22long\x22\x3A\x222.406938\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CLAMART\x22,\x22id\x22\x3A\x224803\x22,\x22lati\x22\x3A\x2248.800313\x22,\x22long\x22\x3A\x222.263162\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CLICHY\x22,\x22id\x22\x3A\x224804\x22,\x22lati\x22\x3A\x2248.902389\x22,\x22long\x22\x3A\x222.304312\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20COLOMBES\x22,\x22id\x22\x3A\x224805\x22,\x22lati\x22\x3A\x2248.92276\x22,\x22long\x22\x3A\x222.254343\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20COURBEVOIE\x22,\x22id\x22\x3A\x224806\x22,\x22lati\x22\x3A\x2248.895463\x22,\x22long\x22\x3A\x222.2565\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20DRANCY\x22,\x22id\x22\x3A\x224831\x22,\x22lati\x22\x3A\x2248.925691\x22,\x22long\x22\x3A\x222.389513\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20FRESNES\x22,\x22id\x22\x3A\x225398\x22,\x22lati\x22\x3A\x2248.75534\x22,\x22long\x22\x3A\x222.322471\x22\x7D,\x7B\x22name\x22\x3A\x22mairie\x20de\x20Garches\x22,\x22id\x22\x3A\x225287\x22,\x22lati\x22\x3A\x2248.843147\x22,\x22long\x22\x3A\x222.186586\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20GENNEVILLIERS\x22,\x22id\x22\x3A\x224807\x22,\x22lati\x22\x3A\x2248.925846\x22,\x22long\x22\x3A\x222.294367\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20HOUILLES\x22,\x22id\x22\x3A\x224535\x22,\x22lati\x22\x3A\x2248.923084\x22,\x22long\x22\x3A\x222.186666\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20ISSY\x20LES\x20MOULINEAUX\x22,\x22id\x22\x3A\x224808\x22,\x22lati\x22\x3A\x2248.82423\x22,\x22long\x22\x3A\x222.273643\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20IVRY\x20SUR\x20SEINE\x22,\x22id\x22\x3A\x224864\x22,\x22lati\x22\x3A\x2248.807809\x22,\x22long\x22\x3A\x222.374647\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20L\x27HAY\x20LES\x20ROSES\x22,\x22id\x22\x3A\x224868\x22,\x22lati\x22\x3A\x2248.778867\x22,\x22long\x22\x3A\x222.337234\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LA\x20COURNEUVE\x22,\x22id\x22\x3A\x224835\x22,\x22lati\x22\x3A\x2248.926341\x22,\x22long\x22\x3A\x222.391157\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LA\x20GARENNE\x20COLOMBES\x22,\x22id\x22\x3A\x224809\x22,\x22lati\x22\x3A\x2248.906762\x22,\x22long\x22\x3A\x222.246125\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LE\x20BOURGET\x22,\x22id\x22\x3A\x224837\x22,\x22lati\x22\x3A\x2248.934871\x22,\x22long\x22\x3A\x222.425765\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LE\x20PLESSIS\x20ROBINSON\x22,\x22id\x22\x3A\x224823\x22,\x22lati\x22\x3A\x2248.78248\x22,\x22long\x22\x3A\x222.262036\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LE\x20PRE\x20SAINT\x20GERVAIS\x22,\x22id\x22\x3A\x224838\x22,\x22lati\x22\x3A\x2248.883069\x22,\x22long\x22\x3A\x222.403281\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LES\x20LILAS\x22,\x22id\x22\x3A\x224840\x22,\x22lati\x22\x3A\x2248.880519\x22,\x22long\x22\x3A\x222.41849\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LEVALLOIS\x22,\x22id\x22\x3A\x224810\x22,\x22lati\x22\x3A\x2248.893086\x22,\x22long\x22\x3A\x222.288514\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20MALAKOFF\x22,\x22id\x22\x3A\x224811\x22,\x22lati\x22\x3A\x2248.820888\x22,\x22long\x22\x3A\x222.301668\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20MEUDON\x22,\x22id\x22\x3A\x224812\x22,\x22lati\x22\x3A\x2248.812558\x22,\x22long\x22\x3A\x222.238593\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20MONTROUGE\x22,\x22id\x22\x3A\x224813\x22,\x22lati\x22\x3A\x2248.818705\x22,\x22long\x22\x3A\x222.319896\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20NANTERRE\x22,\x22id\x22\x3A\x224814\x22,\x22lati\x22\x3A\x2248.892044\x22,\x22long\x22\x3A\x222.205266\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20NEUILLY\x20SUR\x20SEINE\x22,\x22id\x22\x3A\x224815\x22,\x22lati\x22\x3A\x2248.885111\x22,\x22long\x22\x3A\x222.266186\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20PANTIN\x22,\x22id\x22\x3A\x224845\x22,\x22lati\x22\x3A\x2248.896479\x22,\x22long\x22\x3A\x222.401907\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20PUTEAUX\x22,\x22id\x22\x3A\x224816\x22,\x22lati\x22\x3A\x2248.8843\x22,\x22long\x22\x3A\x222.236835\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20RUEIL\x20MALMAISON\x22,\x22id\x22\x3A\x224817\x22,\x22lati\x22\x3A\x2248.877939\x22,\x22long\x22\x3A\x222.180679\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SAINT\x20CLOUD\x22,\x22id\x22\x3A\x224818\x22,\x22lati\x22\x3A\x2248.843706\x22,\x22long\x22\x3A\x222.219356\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SAINT\x2DDENIS\x22,\x22id\x22\x3A\x224851\x22,\x22lati\x22\x3A\x2248.936005\x22,\x22long\x22\x3A\x222.358906\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SAINT\x20MANDE\x22,\x22id\x22\x3A\x225407\x22,\x22lati\x22\x3A\x2248.843501\x22,\x22long\x22\x3A\x222.419041\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SAINT\x20MAURICE\x22,\x22id\x22\x3A\x224873\x22,\x22lati\x22\x3A\x2248.818091\x22,\x22long\x22\x3A\x222.423183\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SAINT\x20OUEN\x22,\x22id\x22\x3A\x224850\x22,\x22lati\x22\x3A\x2248.912188\x22,\x22long\x22\x3A\x222.333285\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SCEAUX\x22,\x22id\x22\x3A\x224819\x22,\x22lati\x22\x3A\x2248.778775\x22,\x22long\x22\x3A\x222.288772\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SEVRES\x22,\x22id\x22\x3A\x224820\x22,\x22lati\x22\x3A\x2248.824434\x22,\x22long\x22\x3A\x222.21308\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SURESNES\x22,\x22id\x22\x3A\x224821\x22,\x22lati\x22\x3A\x2248.87113\x22,\x22long\x22\x3A\x222.224667\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20THIAIS\x22,\x22id\x22\x3A\x224875\x22,\x22lati\x22\x3A\x2248.765315\x22,\x22long\x22\x3A\x222.388829\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20VANVES\x22,\x22id\x22\x3A\x224822\x22,\x22lati\x22\x3A\x2248.821396\x22,\x22long\x22\x3A\x222.289619\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20VELIZY\x20VILLACOUBLAY\x22,\x22id\x22\x3A\x224558\x22,\x22lati\x22\x3A\x2248.782531\x22,\x22long\x22\x3A\x222.191265\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20VILLEJUIF\x22,\x22id\x22\x3A\x224876\x22,\x22lati\x22\x3A\x2248.794931\x22,\x22long\x22\x3A\x222.366248\x22\x7D,\x7B\x22name\x22\x3A\x22mairie\x20de\x20Villeneuve\x2Dla\x2DGarenne\x22,\x22id\x22\x3A\x223990\x22,\x22lati\x22\x3A\x2248.935596\x22,\x22long\x22\x3A\x222.332934\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20VIROFLAY\x22,\x22id\x22\x3A\x224559\x22,\x22lati\x22\x3A\x2248.799422\x22,\x22long\x22\x3A\x222.172793\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20VITRY\x20SUR\x20SEINE\x22,\x22id\x22\x3A\x224878\x22,\x22lati\x22\x3A\x2248.788757\x22,\x22long\x22\x3A\x222.38929\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20LE\x20KREMLIN\x20BICETRE\x22,\x22id\x22\x3A\x225400\x22,\x22lati\x22\x3A\x2248.812652\x22,\x22long\x22\x3A\x222.356646\x22\x7D,\x7B\x22name\x22\x3A\x22Pr\x5Cu00e9fecture\x20de\x20Police\x20\x20\x2D\x20Site\x20de\x20Gesvres\x204\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224470\x22,\x22lati\x22\x3A\x2248.856894\x22,\x22long\x22\x3A\x222.348783\x22\x7D\x5D
I tried json_decode($myString) but it doesn't works
it works in javascript JSON.parse(...)
This is a JSON alright but in hex so converting from hex to string and should output to browser as JSON
<?php
header('Content-type: application/json');
function decode_code($code){
return preg_replace_callback(
"#\\\(x)?([0-9a-f]{2,3})#",
function($m){
return chr($m[1]?hexdec($m[2]):octdec($m[2]));
},
$code
);
}
echo (decode_code("\x5B\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20d\x27Asni\x5Cu00e8res\x20sur\x20Seine\x20Belfort\x22,\x22id\x22\x3A\x225337\x22,\x22lati\x22\x3A\x2248.907864\x22,\x22long\x22\x3A\x222.268167\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20d\x27Asni\x5Cu00e8res\x20sur\x20Seine\x20Les\x20Hauts\x20d\x27Asni\x5Cu00e8res\x22,\x22id\x22\x3A\x225338\x22,\x22lati\x22\x3A\x2248.925983\x22,\x22long\x22\x3A\x222.274256\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Bagneux\x20Port\x20Galand\x22,\x22id\x22\x3A\x225339\x22,\x22lati\x22\x3A\x2248.788372\x22,\x22long\x22\x3A\x222.317539\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Bois\x20Colombes\x20Les\x20Bruy\x5Cu00e8res\x22,\x22id\x22\x3A\x225340\x22,\x22lati\x22\x3A\x2248.908581\x22,\x22long\x22\x3A\x222.262088\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Colombes\x20Foss\x5Cu00e9\x20Jean\x22,\x22id\x22\x3A\x225342\x22,\x22lati\x22\x3A\x2248.93106\x22,\x22long\x22\x3A\x222.267059\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Colombes\x20Wiener\x22,\x22id\x22\x3A\x225343\x22,\x22lati\x22\x3A\x2248.915141\x22,\x22long\x22\x3A\x222.246733\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Courbevoie\x20\x2D\x20Quartier\x20de\x20B\x5Cu00e9con\x22,\x22id\x22\x3A\x225344\x22,\x22lati\x22\x3A\x2248.901328\x22,\x22long\x22\x3A\x222.265769\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Courbevoie\x20\x2D\x20Quartier\x20Faubourg\x20de\x20l\x27Arche\x22,\x22id\x22\x3A\x225345\x22,\x22lati\x22\x3A\x2248.897737\x22,\x22long\x22\x3A\x222.238265\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20Meudon\x20la\x20For\x5Cu00eat\x20Place\x20Centrale\x22,\x22id\x22\x3A\x225346\x22,\x22lati\x22\x3A\x2248.787749\x22,\x22long\x22\x3A\x222.227974\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2010\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224463\x22,\x22lati\x22\x3A\x2248.871982\x22,\x22long\x22\x3A\x222.357889\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2012\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224464\x22,\x22lati\x22\x3A\x2248.840246\x22,\x22long\x22\x3A\x222.388204\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2014\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224465\x22,\x22lati\x22\x3A\x2248.832864\x22,\x22long\x22\x3A\x222.326462\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2015\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224475\x22,\x22lati\x22\x3A\x2248.841647\x22,\x22long\x22\x3A\x222.299668\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2016\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224466\x22,\x22lati\x22\x3A\x2248.863973\x22,\x22long\x22\x3A\x222.277212\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2017\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224467\x22,\x22lati\x22\x3A\x2248.883034\x22,\x22long\x22\x3A\x222.32408\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2018\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224468\x22,\x22lati\x22\x3A\x2248.892666\x22,\x22long\x22\x3A\x222.337346\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2019\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224461\x22,\x22lati\x22\x3A\x2248.876334\x22,\x22long\x22\x3A\x222.39318\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2020\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224469\x22,\x22lati\x22\x3A\x2248.864976\x22,\x22long\x22\x3A\x222.39871\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x205\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224471\x22,\x22lati\x22\x3A\x2248.846319\x22,\x22long\x22\x3A\x222.344516\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x207\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224472\x22,\x22lati\x22\x3A\x2248.856888\x22,\x22long\x22\x3A\x222.319964\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x208\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224473\x22,\x22lati\x22\x3A\x2248.877862\x22,\x22long\x22\x3A\x222.317804\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x209\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224474\x22,\x22lati\x22\x3A\x2248.872497\x22,\x22long\x22\x3A\x222.340366\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20d\x27ALFORTVILLE\x22,\x22id\x22\x3A\x225392\x22,\x22lati\x22\x3A\x2248.80529\x22,\x22long\x22\x3A\x222.420021\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20d\x27ARCUEIL\x22,\x22id\x22\x3A\x225032\x22,\x22lati\x22\x3A\x2248.805973\x22,\x22long\x22\x3A\x222.336826\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20ASNIERES\x20SUR\x20SEINE\x22,\x22id\x22\x3A\x224799\x22,\x22lati\x22\x3A\x2248.910354\x22,\x22long\x22\x3A\x222.289417\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20AUBERVILLIERS\x22,\x22id\x22\x3A\x224825\x22,\x22lati\x22\x3A\x2248.914652\x22,\x22long\x22\x3A\x222.381673\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20BAGNEUX\x22,\x22id\x22\x3A\x224800\x22,\x22lati\x22\x3A\x2248.798652\x22,\x22long\x22\x3A\x222.304296\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20BAGNOLET\x22,\x22id\x22\x3A\x224827\x22,\x22lati\x22\x3A\x2248.868921\x22,\x22long\x22\x3A\x222.417979\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20BOIS\x20COLOMBES\x22,\x22id\x22\x3A\x224824\x22,\x22lati\x22\x3A\x2248.914476\x22,\x22long\x22\x3A\x222.267797\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20BOULOGNE\x20BILLANCOURT\x22,\x22id\x22\x3A\x224801\x22,\x22lati\x22\x3A\x2248.835388\x22,\x22long\x22\x3A\x222.24031\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CACHAN\x22,\x22id\x22\x3A\x224859\x22,\x22lati\x22\x3A\x2248.794443\x22,\x22long\x22\x3A\x222.331244\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CHARENTON\x20LE\x20PONT\x22,\x22id\x22\x3A\x225395\x22,\x22lati\x22\x3A\x2248.819851\x22,\x22long\x22\x3A\x222.415667\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CHATENAY\x20MALABRY\x22,\x22id\x22\x3A\x224802\x22,\x22lati\x22\x3A\x2248.767087\x22,\x22long\x22\x3A\x222.277421\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CHATILLON\x22,\x22id\x22\x3A\x225382\x22,\x22lati\x22\x3A\x2248.799868\x22,\x22long\x22\x3A\x222.289823\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CHATOU\x22,\x22id\x22\x3A\x224531\x22,\x22lati\x22\x3A\x2248.890074\x22,\x22long\x22\x3A\x222.157537\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CHOISY\x20LE\x20ROI\x22,\x22id\x22\x3A\x224861\x22,\x22lati\x22\x3A\x2248.762448\x22,\x22long\x22\x3A\x222.406938\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CLAMART\x22,\x22id\x22\x3A\x224803\x22,\x22lati\x22\x3A\x2248.800313\x22,\x22long\x22\x3A\x222.263162\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CLICHY\x22,\x22id\x22\x3A\x224804\x22,\x22lati\x22\x3A\x2248.902389\x22,\x22long\x22\x3A\x222.304312\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20COLOMBES\x22,\x22id\x22\x3A\x224805\x22,\x22lati\x22\x3A\x2248.92276\x22,\x22long\x22\x3A\x222.254343\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20COURBEVOIE\x22,\x22id\x22\x3A\x224806\x22,\x22lati\x22\x3A\x2248.895463\x22,\x22long\x22\x3A\x222.2565\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20DRANCY\x22,\x22id\x22\x3A\x224831\x22,\x22lati\x22\x3A\x2248.925691\x22,\x22long\x22\x3A\x222.389513\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20FRESNES\x22,\x22id\x22\x3A\x225398\x22,\x22lati\x22\x3A\x2248.75534\x22,\x22long\x22\x3A\x222.322471\x22\x7D,\x7B\x22name\x22\x3A\x22mairie\x20de\x20Garches\x22,\x22id\x22\x3A\x225287\x22,\x22lati\x22\x3A\x2248.843147\x22,\x22long\x22\x3A\x222.186586\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20GENNEVILLIERS\x22,\x22id\x22\x3A\x224807\x22,\x22lati\x22\x3A\x2248.925846\x22,\x22long\x22\x3A\x222.294367\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20HOUILLES\x22,\x22id\x22\x3A\x224535\x22,\x22lati\x22\x3A\x2248.923084\x22,\x22long\x22\x3A\x222.186666\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20ISSY\x20LES\x20MOULINEAUX\x22,\x22id\x22\x3A\x224808\x22,\x22lati\x22\x3A\x2248.82423\x22,\x22long\x22\x3A\x222.273643\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20IVRY\x20SUR\x20SEINE\x22,\x22id\x22\x3A\x224864\x22,\x22lati\x22\x3A\x2248.807809\x22,\x22long\x22\x3A\x222.374647\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20L\x27HAY\x20LES\x20ROSES\x22,\x22id\x22\x3A\x224868\x22,\x22lati\x22\x3A\x2248.778867\x22,\x22long\x22\x3A\x222.337234\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LA\x20COURNEUVE\x22,\x22id\x22\x3A\x224835\x22,\x22lati\x22\x3A\x2248.926341\x22,\x22long\x22\x3A\x222.391157\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LA\x20GARENNE\x20COLOMBES\x22,\x22id\x22\x3A\x224809\x22,\x22lati\x22\x3A\x2248.906762\x22,\x22long\x22\x3A\x222.246125\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LE\x20BOURGET\x22,\x22id\x22\x3A\x224837\x22,\x22lati\x22\x3A\x2248.934871\x22,\x22long\x22\x3A\x222.425765\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LE\x20PLESSIS\x20ROBINSON\x22,\x22id\x22\x3A\x224823\x22,\x22lati\x22\x3A\x2248.78248\x22,\x22long\x22\x3A\x222.262036\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LE\x20PRE\x20SAINT\x20GERVAIS\x22,\x22id\x22\x3A\x224838\x22,\x22lati\x22\x3A\x2248.883069\x22,\x22long\x22\x3A\x222.403281\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LES\x20LILAS\x22,\x22id\x22\x3A\x224840\x22,\x22lati\x22\x3A\x2248.880519\x22,\x22long\x22\x3A\x222.41849\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LEVALLOIS\x22,\x22id\x22\x3A\x224810\x22,\x22lati\x22\x3A\x2248.893086\x22,\x22long\x22\x3A\x222.288514\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20MALAKOFF\x22,\x22id\x22\x3A\x224811\x22,\x22lati\x22\x3A\x2248.820888\x22,\x22long\x22\x3A\x222.301668\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20MEUDON\x22,\x22id\x22\x3A\x224812\x22,\x22lati\x22\x3A\x2248.812558\x22,\x22long\x22\x3A\x222.238593\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20MONTROUGE\x22,\x22id\x22\x3A\x224813\x22,\x22lati\x22\x3A\x2248.818705\x22,\x22long\x22\x3A\x222.319896\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20NANTERRE\x22,\x22id\x22\x3A\x224814\x22,\x22lati\x22\x3A\x2248.892044\x22,\x22long\x22\x3A\x222.205266\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20NEUILLY\x20SUR\x20SEINE\x22,\x22id\x22\x3A\x224815\x22,\x22lati\x22\x3A\x2248.885111\x22,\x22long\x22\x3A\x222.266186\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20PANTIN\x22,\x22id\x22\x3A\x224845\x22,\x22lati\x22\x3A\x2248.896479\x22,\x22long\x22\x3A\x222.401907\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20PUTEAUX\x22,\x22id\x22\x3A\x224816\x22,\x22lati\x22\x3A\x2248.8843\x22,\x22long\x22\x3A\x222.236835\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20RUEIL\x20MALMAISON\x22,\x22id\x22\x3A\x224817\x22,\x22lati\x22\x3A\x2248.877939\x22,\x22long\x22\x3A\x222.180679\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SAINT\x20CLOUD\x22,\x22id\x22\x3A\x224818\x22,\x22lati\x22\x3A\x2248.843706\x22,\x22long\x22\x3A\x222.219356\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SAINT\x2DDENIS\x22,\x22id\x22\x3A\x224851\x22,\x22lati\x22\x3A\x2248.936005\x22,\x22long\x22\x3A\x222.358906\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SAINT\x20MANDE\x22,\x22id\x22\x3A\x225407\x22,\x22lati\x22\x3A\x2248.843501\x22,\x22long\x22\x3A\x222.419041\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SAINT\x20MAURICE\x22,\x22id\x22\x3A\x224873\x22,\x22lati\x22\x3A\x2248.818091\x22,\x22long\x22\x3A\x222.423183\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SAINT\x20OUEN\x22,\x22id\x22\x3A\x224850\x22,\x22lati\x22\x3A\x2248.912188\x22,\x22long\x22\x3A\x222.333285\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SCEAUX\x22,\x22id\x22\x3A\x224819\x22,\x22lati\x22\x3A\x2248.778775\x22,\x22long\x22\x3A\x222.288772\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SEVRES\x22,\x22id\x22\x3A\x224820\x22,\x22lati\x22\x3A\x2248.824434\x22,\x22long\x22\x3A\x222.21308\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SURESNES\x22,\x22id\x22\x3A\x224821\x22,\x22lati\x22\x3A\x2248.87113\x22,\x22long\x22\x3A\x222.224667\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20THIAIS\x22,\x22id\x22\x3A\x224875\x22,\x22lati\x22\x3A\x2248.765315\x22,\x22long\x22\x3A\x222.388829\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20VANVES\x22,\x22id\x22\x3A\x224822\x22,\x22lati\x22\x3A\x2248.821396\x22,\x22long\x22\x3A\x222.289619\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20VELIZY\x20VILLACOUBLAY\x22,\x22id\x22\x3A\x224558\x22,\x22lati\x22\x3A\x2248.782531\x22,\x22long\x22\x3A\x222.191265\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20VILLEJUIF\x22,\x22id\x22\x3A\x224876\x22,\x22lati\x22\x3A\x2248.794931\x22,\x22long\x22\x3A\x222.366248\x22\x7D,\x7B\x22name\x22\x3A\x22mairie\x20de\x20Villeneuve\x2Dla\x2DGarenne\x22,\x22id\x22\x3A\x223990\x22,\x22lati\x22\x3A\x2248.935596\x22,\x22long\x22\x3A\x222.332934\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20VIROFLAY\x22,\x22id\x22\x3A\x224559\x22,\x22lati\x22\x3A\x2248.799422\x22,\x22long\x22\x3A\x222.172793\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20VITRY\x20SUR\x20SEINE\x22,\x22id\x22\x3A\x224878\x22,\x22lati\x22\x3A\x2248.788757\x22,\x22long\x22\x3A\x222.38929\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20LE\x20KREMLIN\x20BICETRE\x22,\x22id\x22\x3A\x225400\x22,\x22lati\x22\x3A\x2248.812652\x22,\x22long\x22\x3A\x222.356646\x22\x7D,\x7B\x22name\x22\x3A\x22Pr\x5Cu00e9fecture\x20de\x20Police\x20\x20\x2D\x20Site\x20de\x20Gesvres\x204\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224470\x22,\x22lati\x22\x3A\x2248.856894\x22,\x22long\x22\x3A\x222.348783\x22\x7D\x5D"));
?>
Your json_encode is encoding unicode characters and they are being escaped. You can change this behaviour by passing the flag JSON_UNESCAPED_UNICODE as second parameter.
echo json_encode($array, JSON_UNESCAPED_UNICODE);
Make sure you're using double quotes:
<?php
$string = "\x5B\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20d\x27Asni\x5Cu00e8res\x20sur\x20Seine\x20Belfort\x22,\x22id\x22\x3A\x225337\x22,\x22lati\x22\x3A\x2248.907864\x22,\x22long\x22\x3A\x222.268167\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20d\x27Asni\x5Cu00e8res\x20sur\x20Seine\x20Les\x20Hauts\x20d\x27Asni\x5Cu00e8res\x22,\x22id\x22\x3A\x225338\x22,\x22lati\x22\x3A\x2248.925983\x22,\x22long\x22\x3A\x222.274256\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Bagneux\x20Port\x20Galand\x22,\x22id\x22\x3A\x225339\x22,\x22lati\x22\x3A\x2248.788372\x22,\x22long\x22\x3A\x222.317539\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Bois\x20Colombes\x20Les\x20Bruy\x5Cu00e8res\x22,\x22id\x22\x3A\x225340\x22,\x22lati\x22\x3A\x2248.908581\x22,\x22long\x22\x3A\x222.262088\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Colombes\x20Foss\x5Cu00e9\x20Jean\x22,\x22id\x22\x3A\x225342\x22,\x22lati\x22\x3A\x2248.93106\x22,\x22long\x22\x3A\x222.267059\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Colombes\x20Wiener\x22,\x22id\x22\x3A\x225343\x22,\x22lati\x22\x3A\x2248.915141\x22,\x22long\x22\x3A\x222.246733\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Courbevoie\x20\x2D\x20Quartier\x20de\x20B\x5Cu00e9con\x22,\x22id\x22\x3A\x225344\x22,\x22lati\x22\x3A\x2248.901328\x22,\x22long\x22\x3A\x222.265769\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20de\x20Courbevoie\x20\x2D\x20Quartier\x20Faubourg\x20de\x20l\x27Arche\x22,\x22id\x22\x3A\x225345\x22,\x22lati\x22\x3A\x2248.897737\x22,\x22long\x22\x3A\x222.238265\x22\x7D,\x7B\x22name\x22\x3A\x22Annexe\x20Mairie\x20Meudon\x20la\x20For\x5Cu00eat\x20Place\x20Centrale\x22,\x22id\x22\x3A\x225346\x22,\x22lati\x22\x3A\x2248.787749\x22,\x22long\x22\x3A\x222.227974\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2010\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224463\x22,\x22lati\x22\x3A\x2248.871982\x22,\x22long\x22\x3A\x222.357889\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2012\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224464\x22,\x22lati\x22\x3A\x2248.840246\x22,\x22long\x22\x3A\x222.388204\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2014\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224465\x22,\x22lati\x22\x3A\x2248.832864\x22,\x22long\x22\x3A\x222.326462\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2015\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224475\x22,\x22lati\x22\x3A\x2248.841647\x22,\x22long\x22\x3A\x222.299668\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2016\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224466\x22,\x22lati\x22\x3A\x2248.863973\x22,\x22long\x22\x3A\x222.277212\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2017\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224467\x22,\x22lati\x22\x3A\x2248.883034\x22,\x22long\x22\x3A\x222.32408\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2018\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224468\x22,\x22lati\x22\x3A\x2248.892666\x22,\x22long\x22\x3A\x222.337346\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2019\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224461\x22,\x22lati\x22\x3A\x2248.876334\x22,\x22long\x22\x3A\x222.39318\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x2020\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224469\x22,\x22lati\x22\x3A\x2248.864976\x22,\x22long\x22\x3A\x222.39871\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x205\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224471\x22,\x22lati\x22\x3A\x2248.846319\x22,\x22long\x22\x3A\x222.344516\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x207\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224472\x22,\x22lati\x22\x3A\x2248.856888\x22,\x22long\x22\x3A\x222.319964\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x208\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224473\x22,\x22lati\x22\x3A\x2248.877862\x22,\x22long\x22\x3A\x222.317804\x22\x7D,\x7B\x22name\x22\x3A\x22Antenne\x20de\x20Police\x209\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224474\x22,\x22lati\x22\x3A\x2248.872497\x22,\x22long\x22\x3A\x222.340366\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20d\x27ALFORTVILLE\x22,\x22id\x22\x3A\x225392\x22,\x22lati\x22\x3A\x2248.80529\x22,\x22long\x22\x3A\x222.420021\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20d\x27ARCUEIL\x22,\x22id\x22\x3A\x225032\x22,\x22lati\x22\x3A\x2248.805973\x22,\x22long\x22\x3A\x222.336826\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20ASNIERES\x20SUR\x20SEINE\x22,\x22id\x22\x3A\x224799\x22,\x22lati\x22\x3A\x2248.910354\x22,\x22long\x22\x3A\x222.289417\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20AUBERVILLIERS\x22,\x22id\x22\x3A\x224825\x22,\x22lati\x22\x3A\x2248.914652\x22,\x22long\x22\x3A\x222.381673\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20BAGNEUX\x22,\x22id\x22\x3A\x224800\x22,\x22lati\x22\x3A\x2248.798652\x22,\x22long\x22\x3A\x222.304296\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20BAGNOLET\x22,\x22id\x22\x3A\x224827\x22,\x22lati\x22\x3A\x2248.868921\x22,\x22long\x22\x3A\x222.417979\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20BOIS\x20COLOMBES\x22,\x22id\x22\x3A\x224824\x22,\x22lati\x22\x3A\x2248.914476\x22,\x22long\x22\x3A\x222.267797\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20BOULOGNE\x20BILLANCOURT\x22,\x22id\x22\x3A\x224801\x22,\x22lati\x22\x3A\x2248.835388\x22,\x22long\x22\x3A\x222.24031\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CACHAN\x22,\x22id\x22\x3A\x224859\x22,\x22lati\x22\x3A\x2248.794443\x22,\x22long\x22\x3A\x222.331244\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CHARENTON\x20LE\x20PONT\x22,\x22id\x22\x3A\x225395\x22,\x22lati\x22\x3A\x2248.819851\x22,\x22long\x22\x3A\x222.415667\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CHATENAY\x20MALABRY\x22,\x22id\x22\x3A\x224802\x22,\x22lati\x22\x3A\x2248.767087\x22,\x22long\x22\x3A\x222.277421\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CHATILLON\x22,\x22id\x22\x3A\x225382\x22,\x22lati\x22\x3A\x2248.799868\x22,\x22long\x22\x3A\x222.289823\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CHATOU\x22,\x22id\x22\x3A\x224531\x22,\x22lati\x22\x3A\x2248.890074\x22,\x22long\x22\x3A\x222.157537\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CHOISY\x20LE\x20ROI\x22,\x22id\x22\x3A\x224861\x22,\x22lati\x22\x3A\x2248.762448\x22,\x22long\x22\x3A\x222.406938\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CLAMART\x22,\x22id\x22\x3A\x224803\x22,\x22lati\x22\x3A\x2248.800313\x22,\x22long\x22\x3A\x222.263162\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20CLICHY\x22,\x22id\x22\x3A\x224804\x22,\x22lati\x22\x3A\x2248.902389\x22,\x22long\x22\x3A\x222.304312\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20COLOMBES\x22,\x22id\x22\x3A\x224805\x22,\x22lati\x22\x3A\x2248.92276\x22,\x22long\x22\x3A\x222.254343\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20COURBEVOIE\x22,\x22id\x22\x3A\x224806\x22,\x22lati\x22\x3A\x2248.895463\x22,\x22long\x22\x3A\x222.2565\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20DRANCY\x22,\x22id\x22\x3A\x224831\x22,\x22lati\x22\x3A\x2248.925691\x22,\x22long\x22\x3A\x222.389513\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20FRESNES\x22,\x22id\x22\x3A\x225398\x22,\x22lati\x22\x3A\x2248.75534\x22,\x22long\x22\x3A\x222.322471\x22\x7D,\x7B\x22name\x22\x3A\x22mairie\x20de\x20Garches\x22,\x22id\x22\x3A\x225287\x22,\x22lati\x22\x3A\x2248.843147\x22,\x22long\x22\x3A\x222.186586\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20GENNEVILLIERS\x22,\x22id\x22\x3A\x224807\x22,\x22lati\x22\x3A\x2248.925846\x22,\x22long\x22\x3A\x222.294367\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20HOUILLES\x22,\x22id\x22\x3A\x224535\x22,\x22lati\x22\x3A\x2248.923084\x22,\x22long\x22\x3A\x222.186666\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20ISSY\x20LES\x20MOULINEAUX\x22,\x22id\x22\x3A\x224808\x22,\x22lati\x22\x3A\x2248.82423\x22,\x22long\x22\x3A\x222.273643\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20IVRY\x20SUR\x20SEINE\x22,\x22id\x22\x3A\x224864\x22,\x22lati\x22\x3A\x2248.807809\x22,\x22long\x22\x3A\x222.374647\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20L\x27HAY\x20LES\x20ROSES\x22,\x22id\x22\x3A\x224868\x22,\x22lati\x22\x3A\x2248.778867\x22,\x22long\x22\x3A\x222.337234\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LA\x20COURNEUVE\x22,\x22id\x22\x3A\x224835\x22,\x22lati\x22\x3A\x2248.926341\x22,\x22long\x22\x3A\x222.391157\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LA\x20GARENNE\x20COLOMBES\x22,\x22id\x22\x3A\x224809\x22,\x22lati\x22\x3A\x2248.906762\x22,\x22long\x22\x3A\x222.246125\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LE\x20BOURGET\x22,\x22id\x22\x3A\x224837\x22,\x22lati\x22\x3A\x2248.934871\x22,\x22long\x22\x3A\x222.425765\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LE\x20PLESSIS\x20ROBINSON\x22,\x22id\x22\x3A\x224823\x22,\x22lati\x22\x3A\x2248.78248\x22,\x22long\x22\x3A\x222.262036\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LE\x20PRE\x20SAINT\x20GERVAIS\x22,\x22id\x22\x3A\x224838\x22,\x22lati\x22\x3A\x2248.883069\x22,\x22long\x22\x3A\x222.403281\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LES\x20LILAS\x22,\x22id\x22\x3A\x224840\x22,\x22lati\x22\x3A\x2248.880519\x22,\x22long\x22\x3A\x222.41849\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20LEVALLOIS\x22,\x22id\x22\x3A\x224810\x22,\x22lati\x22\x3A\x2248.893086\x22,\x22long\x22\x3A\x222.288514\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20MALAKOFF\x22,\x22id\x22\x3A\x224811\x22,\x22lati\x22\x3A\x2248.820888\x22,\x22long\x22\x3A\x222.301668\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20MEUDON\x22,\x22id\x22\x3A\x224812\x22,\x22lati\x22\x3A\x2248.812558\x22,\x22long\x22\x3A\x222.238593\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20MONTROUGE\x22,\x22id\x22\x3A\x224813\x22,\x22lati\x22\x3A\x2248.818705\x22,\x22long\x22\x3A\x222.319896\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20NANTERRE\x22,\x22id\x22\x3A\x224814\x22,\x22lati\x22\x3A\x2248.892044\x22,\x22long\x22\x3A\x222.205266\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20NEUILLY\x20SUR\x20SEINE\x22,\x22id\x22\x3A\x224815\x22,\x22lati\x22\x3A\x2248.885111\x22,\x22long\x22\x3A\x222.266186\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20PANTIN\x22,\x22id\x22\x3A\x224845\x22,\x22lati\x22\x3A\x2248.896479\x22,\x22long\x22\x3A\x222.401907\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20PUTEAUX\x22,\x22id\x22\x3A\x224816\x22,\x22lati\x22\x3A\x2248.8843\x22,\x22long\x22\x3A\x222.236835\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20RUEIL\x20MALMAISON\x22,\x22id\x22\x3A\x224817\x22,\x22lati\x22\x3A\x2248.877939\x22,\x22long\x22\x3A\x222.180679\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SAINT\x20CLOUD\x22,\x22id\x22\x3A\x224818\x22,\x22lati\x22\x3A\x2248.843706\x22,\x22long\x22\x3A\x222.219356\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SAINT\x2DDENIS\x22,\x22id\x22\x3A\x224851\x22,\x22lati\x22\x3A\x2248.936005\x22,\x22long\x22\x3A\x222.358906\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SAINT\x20MANDE\x22,\x22id\x22\x3A\x225407\x22,\x22lati\x22\x3A\x2248.843501\x22,\x22long\x22\x3A\x222.419041\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SAINT\x20MAURICE\x22,\x22id\x22\x3A\x224873\x22,\x22lati\x22\x3A\x2248.818091\x22,\x22long\x22\x3A\x222.423183\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SAINT\x20OUEN\x22,\x22id\x22\x3A\x224850\x22,\x22lati\x22\x3A\x2248.912188\x22,\x22long\x22\x3A\x222.333285\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SCEAUX\x22,\x22id\x22\x3A\x224819\x22,\x22lati\x22\x3A\x2248.778775\x22,\x22long\x22\x3A\x222.288772\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SEVRES\x22,\x22id\x22\x3A\x224820\x22,\x22lati\x22\x3A\x2248.824434\x22,\x22long\x22\x3A\x222.21308\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20SURESNES\x22,\x22id\x22\x3A\x224821\x22,\x22lati\x22\x3A\x2248.87113\x22,\x22long\x22\x3A\x222.224667\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20THIAIS\x22,\x22id\x22\x3A\x224875\x22,\x22lati\x22\x3A\x2248.765315\x22,\x22long\x22\x3A\x222.388829\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20VANVES\x22,\x22id\x22\x3A\x224822\x22,\x22lati\x22\x3A\x2248.821396\x22,\x22long\x22\x3A\x222.289619\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20VELIZY\x20VILLACOUBLAY\x22,\x22id\x22\x3A\x224558\x22,\x22lati\x22\x3A\x2248.782531\x22,\x22long\x22\x3A\x222.191265\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20VILLEJUIF\x22,\x22id\x22\x3A\x224876\x22,\x22lati\x22\x3A\x2248.794931\x22,\x22long\x22\x3A\x222.366248\x22\x7D,\x7B\x22name\x22\x3A\x22mairie\x20de\x20Villeneuve\x2Dla\x2DGarenne\x22,\x22id\x22\x3A\x223990\x22,\x22lati\x22\x3A\x2248.935596\x22,\x22long\x22\x3A\x222.332934\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20VIROFLAY\x22,\x22id\x22\x3A\x224559\x22,\x22lati\x22\x3A\x2248.799422\x22,\x22long\x22\x3A\x222.172793\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20de\x20VITRY\x20SUR\x20SEINE\x22,\x22id\x22\x3A\x224878\x22,\x22lati\x22\x3A\x2248.788757\x22,\x22long\x22\x3A\x222.38929\x22\x7D,\x7B\x22name\x22\x3A\x22Mairie\x20LE\x20KREMLIN\x20BICETRE\x22,\x22id\x22\x3A\x225400\x22,\x22lati\x22\x3A\x2248.812652\x22,\x22long\x22\x3A\x222.356646\x22\x7D,\x7B\x22name\x22\x3A\x22Pr\x5Cu00e9fecture\x20de\x20Police\x20\x20\x2D\x20Site\x20de\x20Gesvres\x204\x5Cu00e8me\x20arrondissement\x22,\x22id\x22\x3A\x224470\x22,\x22lati\x22\x3A\x2248.856894\x22,\x22long\x22\x3A\x222.348783\x22\x7D\x5D";
var_dump(json_decode($string,true));
The above code works OK for me. Good luck!!

PHP equivalent for javascript escape/unescape

Let's say I have a string: something
When I escape it in JS I get this: %73%6F%6D%65%74%68%69%6E%67
so I can use this code in JS to decode it:
document.write(unescape('%73%6F%6D%65%74%68%69%6E%67'));
I need the escape function in PHP which will do the same (will encode something to : %73%6F%6D%65%74%68%69%6E%67)
How to do that ?
PHP:
rawurlencode("your funky string");
JS:
decodeURIComponent('your%20funky%20string');
Don't use escape as it is being deprecated.
rawurldecode('%73%6F%6D%65%74%68%69%6E%67');
Some clarification first:
Let's say I have a string: something
When I escape it in JS I get this: %73%6F%6D%65%74%68%69%6E%67
That's wrong. (Btw, the JS escape() function is deprecated. You should use encodeURIComponent() instead!)
so I can use this code in JS to decode it:
document.write(unescape('%73%6F%6D%65%74%68%69%6E%67'));
Yep, this will write "something" to the document (as escape(), also unescape() is deprecated; use decodeURIComponent() instead).
To your question:
I need the [snip] function in PHP which [snip] encode something to %73%6F%6D%65%74%68%69%6E%67
What you're looking for is the hexadecimal representation of charachters. So, to get the string "%73%6F%6D%65%74%68%69%6E%67" from the string "something", you would need:
<?php
function stringToHex($string) {
$hexString = '';
for ($i=0; $i < strlen($string); $i++) {
$hexString .= '%' . bin2hex($string[$i]);
}
return $hexString;
}
$hexString = stringToHex('something');
echo strtoupper($hexString); // %73%6F%6D%65%74%68%69%6E%67
Backwards:
function hexToString($hexString) {
return pack("H*" , str_replace('%', '', $hexString));
}
$string = hexToString('%73%6F%6D%65%74%68%69%6E%67');
echo $string; // something

Categories