moosavimaleki
دوشنبه 18 اسفند 1393, 21:00 عصر
سلام
من میخوام با یه API ارتباط برقرا کنم
منتها باید کاراکتر های فارسی رو به حالت کدینگ \UXXXX در بیارم
با اینش کار نداریم
هم با تابع json_encode میشه هم خودم یه تابع نوشتم که str_replace کنه
function convert_u($cap){
$cap = str_replace('ض','"\u0636"',$cap);
$cap = str_replace('ص','"\u0635"',$cap);
$cap = str_replace('ث','"\u062b"',$cap);
$cap = str_replace('ق','"\u0642"',$cap);
$cap = str_replace('ف','"\u0641"',$cap);
$cap = str_replace('غ','"\u063a"',$cap);
$cap = str_replace('ع','"\u0639"',$cap);
$cap = str_replace('ه','"\u0647"',$cap);
$cap = str_replace('خ','"\u062e"',$cap);
$cap = str_replace('ح','"\u062d"',$cap);
$cap = str_replace('ج','"\u062c"',$cap);
$cap = str_replace('چ','"\u0686"',$cap);
$cap = str_replace('ش','"\u0634"',$cap);
$cap = str_replace('س','"\u0633"',$cap);
$cap = str_replace('ی','"\u06cc"',$cap);
$cap = str_replace('ب','"\u0628"',$cap);
$cap = str_replace('ل','"\u0644"',$cap);
$cap = str_replace('ا','"\u0627"',$cap);
$cap = str_replace('ت','"\u062a"',$cap);
$cap = str_replace('ن','"\u0646"',$cap);
$cap = str_replace('م','"\u0645"',$cap);
$cap = str_replace('ک','"\u06a9"',$cap);
$cap = str_replace('گ','"\u06af"',$cap);
$cap = str_replace('ظ','"\u0638"',$cap);
$cap = str_replace('ط','"\u0637"',$cap);
$cap = str_replace('ز','"\u0632"',$cap);
$cap = str_replace('ر','"\u0631"',$cap);
$cap = str_replace('ذ','"\u0630"',$cap);
$cap = str_replace('د','"\u062f"',$cap);
$cap = str_replace('ئ','"\u0626"',$cap);
$cap = str_replace('و','"\u0648"',$cap);
$cap = str_replace('آ','"\u0622"',$cap);
$cap = str_replace('ء','"\u0621"',$cap);
$cap = str_replace('أ','"\u0623"',$cap);
$cap = str_replace('إ','"\u0625"',$cap);
$cap = str_replace('ؤ','"\u0624"',$cap);
$cap = str_replace('ژ','"\u0698"',$cap);
$cap = str_replace('ي','"\u064a"',$cap);
$cap = str_replace('ة','"\u0629"',$cap);
return $cap;
}
اما وقتی پارامتر رسیده از طرف POST یا GET رو براش میفرستم اصلا هیییچ تاثیری روش نداره!!!
$caption = $_GET['caption'];
echo convert_u($caption);
echo $caption;
یعنی خروجی دو دستوره پایین یکی هست!!!
در صورتی که وقتی از تابع به این صورت استفاده میکنم درسته و خرجی رو تبدیل میکنه
convert_u('حامد');
convert_u($parameter);
من میخوام با یه API ارتباط برقرا کنم
منتها باید کاراکتر های فارسی رو به حالت کدینگ \UXXXX در بیارم
با اینش کار نداریم
هم با تابع json_encode میشه هم خودم یه تابع نوشتم که str_replace کنه
function convert_u($cap){
$cap = str_replace('ض','"\u0636"',$cap);
$cap = str_replace('ص','"\u0635"',$cap);
$cap = str_replace('ث','"\u062b"',$cap);
$cap = str_replace('ق','"\u0642"',$cap);
$cap = str_replace('ف','"\u0641"',$cap);
$cap = str_replace('غ','"\u063a"',$cap);
$cap = str_replace('ع','"\u0639"',$cap);
$cap = str_replace('ه','"\u0647"',$cap);
$cap = str_replace('خ','"\u062e"',$cap);
$cap = str_replace('ح','"\u062d"',$cap);
$cap = str_replace('ج','"\u062c"',$cap);
$cap = str_replace('چ','"\u0686"',$cap);
$cap = str_replace('ش','"\u0634"',$cap);
$cap = str_replace('س','"\u0633"',$cap);
$cap = str_replace('ی','"\u06cc"',$cap);
$cap = str_replace('ب','"\u0628"',$cap);
$cap = str_replace('ل','"\u0644"',$cap);
$cap = str_replace('ا','"\u0627"',$cap);
$cap = str_replace('ت','"\u062a"',$cap);
$cap = str_replace('ن','"\u0646"',$cap);
$cap = str_replace('م','"\u0645"',$cap);
$cap = str_replace('ک','"\u06a9"',$cap);
$cap = str_replace('گ','"\u06af"',$cap);
$cap = str_replace('ظ','"\u0638"',$cap);
$cap = str_replace('ط','"\u0637"',$cap);
$cap = str_replace('ز','"\u0632"',$cap);
$cap = str_replace('ر','"\u0631"',$cap);
$cap = str_replace('ذ','"\u0630"',$cap);
$cap = str_replace('د','"\u062f"',$cap);
$cap = str_replace('ئ','"\u0626"',$cap);
$cap = str_replace('و','"\u0648"',$cap);
$cap = str_replace('آ','"\u0622"',$cap);
$cap = str_replace('ء','"\u0621"',$cap);
$cap = str_replace('أ','"\u0623"',$cap);
$cap = str_replace('إ','"\u0625"',$cap);
$cap = str_replace('ؤ','"\u0624"',$cap);
$cap = str_replace('ژ','"\u0698"',$cap);
$cap = str_replace('ي','"\u064a"',$cap);
$cap = str_replace('ة','"\u0629"',$cap);
return $cap;
}
اما وقتی پارامتر رسیده از طرف POST یا GET رو براش میفرستم اصلا هیییچ تاثیری روش نداره!!!
$caption = $_GET['caption'];
echo convert_u($caption);
echo $caption;
یعنی خروجی دو دستوره پایین یکی هست!!!
در صورتی که وقتی از تابع به این صورت استفاده میکنم درسته و خرجی رو تبدیل میکنه
convert_u('حامد');
convert_u($parameter);