2016-05-30 11 views
1

Ich verwende eine API, die einen Teil des Inhalts mit JavaScript codiert. Dieser Inhalt ist im Browser sichtbar, aber während ich unter Verwendung von curl in PHP darauf zugreife, bekomme ich einfachen JavaScript-Code, da es keine JS-Engine auf dem Server gibt. Ich möchte Unicode-Zeichen in PHP dekodieren/entschlüsseln, wie es JavaScript tut. Ist das möglich?Unescence Unicode-Zeichen mit PHP

finden Sie einen Ausschnitt von einfachen JavaScript ich als Antwort unten erhalten:

eval(unescape("document.write('%u0039%u0032%u0039%u0032%u0034')"));

Das Snippet Code 92924

+0

Das ist nicht "verschlüsselt" ist Inhalt, es ist ein entflohener Unicode-Notation. – arkascha

+0

Irgendwelche Lösungen dazu? – urgas9

+0

Ich würde sagen, dass Curl keine JS-Engine enthält, also wird Javascript nicht gestartet. Also anstelle von JS-Ausgabe erhalten Sie JS-Code –

Antwort

1

Ok zurückkehren sollte, fand ich eine Lösung für dieses Problem .

Ich analysiere jetzt die Inhaltszeichenfolge und benutze dann die json_decode Funktion, um Unicode-Zeichen zu entfernen, aber zuerst muss% u durch \ u ersetzt werden. Hier ist mein Code:

$string = "%u0039%u0032%u0039%u0032%u0034"; 
$unescaped = str_replace("%u","\u", $string); 
echo json_decode('"'.$unescaped .'"'); 

Dieser Code ausgeben würde: 92924