Php POST变量和波斯语字符
发送波斯字符时,$\u POST变量有问题Php POST变量和波斯语字符,php,unicode,persian,Php,Unicode,Persian,发送波斯字符时,$\u POST变量有问题 <?php if (isset($_POST['caption'])){ $captione = $_POST['caption']; // I sent ض from form $cap = str_replace('ض','you',$captione); echo $captione.'<br>'; //output ض echo $cap; //output ض }else{ logi
<?php
if (isset($_POST['caption'])){
$captione = $_POST['caption']; // I sent ض from form
$cap = str_replace('ض','you',$captione);
echo $captione.'<br>'; //output ض
echo $cap; //output ض
}else{
loginForm();
}
function loginForm(){
echo '<form id = "myform" action="t.php" method="POST">';
echo 'caption: <textarea id="user_data" name="caption" type="text" ></textarea>';
echo '<input type="submit" value="Send File" />';
echo '</form>';
}
?>
captione==capstru_replace
在字幕中找不到ض但是当
echo$_POST['caption']
输出为时,尝试使用,例如mb_ereg_replace()
替换用户输入中的波斯语字符。不起作用$船长=‘ض’$cap=strضU replace('ض'、'you'、$captione);此代码工作正常,但当从表单接收时不工作,可能您的编码不匹配。什么是表单编码?!?比如页面编码?或提交表单时,将accept charset
标题设置为UTF-8
。将表单页面字符编码更改为unicode并提交表单时,问题已得到解决。我的英语很好:)