jquery和php utf-8编码解码

jquery和php utf-8编码解码,php,jquery,Php,Jquery,嗨,在我的项目中,我正在制作一个土耳其字母检查脚本。 如果用户输入的密钥不是土耳其语字母,则发出警告 这是我的jquery代码 $( "#singup_surname" ).keyup(function() { var singup_surname = $( "#singup_surname" ).val().trim(); var request = $.ajax({ url: "check.php", type: "POST", encoding:"UT

嗨,在我的项目中,我正在制作一个土耳其字母检查脚本。 如果用户输入的密钥不是土耳其语字母,则发出警告

这是我的jquery代码

$( "#singup_surname" ).keyup(function() {
var singup_surname = $( "#singup_surname" ).val().trim();

var request = $.ajax({
      url: "check.php",
      type: "POST",
      encoding:"UTF-8",
      data: { singup_surname_only:singup_surname},
      dataType: "html"
    });
request.done(function( msg ) {
    msg=msg.trim();

  if(msg=="ok"){
      $('#singup_surname').removeClass('wrongField');
      $('#singup_surname').addClass('trueField');
  }else if(msg=="no"){
      $('#singup_surname').removeClass('trueField')
      $('#singup_surname').addClass('wrongField')

  }else {
      alert("database connection error");
  }

});

});
例如,如果用户像这样输入şletter post send

singup_surname_only=%C5%9F 
在php方面,这是我的代码

$singup_surname_only=$_POST['singup_surname_only'];
if (isset($singup_surname_only)) {
$singup_surname_only=urldecode($singup_surname_only);

$tk = array('A','B','C','Ç','D','E','F','G','Ğ','H','I','İ','J','K','L','M','N','O','Ö','P','R','S','Ş','T','U','Ü','V','Y','Z','a', 'b', 'c','ç', 'd', 'e', 'f', 'g','ğ', 'h', 'i','ı', 'j', 'k', 'l', 'm', 
             'n', 'o','ö', 'p', 'r', 's','ş','t','u','ü', 'v','y','z' ) ;
$tk=array("%C5%9F","ö");
$arr1 = str_split($singup_surname_only);
$letterCount = count($arr1);
$i=1;
while ($i<=$letterCount) {
    if (in_array($arr1["$i"], $tk)) {

        }else echo 'no';
        $i++;
}




}

我在数组中看到的php端的字母“ş”类似于这样的“ş”


如何解决此问题非常感谢

这就是如何检查字符串$str中是否只有土耳其字符的方法:


变成像这样的“Å”-你怎么知道它变成了Å?我将这些代码添加到php端,以查看print_r$tk发生了什么;回响打印\u r$arr1;回响打印r$letterCount;回响打印r$i;回响当你这样做的时候,页面编码是?我在firebug net post响应中看到了它。firebug在响应显示中使用了什么编码?你确定不是吗?
$tkReg = sprintf('~^[%s]*$~u', join('', $tk));
$thereAreOnlyTurkishCharacters = preg_match($tkReg, $str) === 1;

var_dump($thereAreOnlyTurkishCharacters);