首页 > 后端开发 > 正文

php搜索 繁体怎么转成简体

2024-09-12 18:49:57 | 我爱编程网

php搜索 繁体怎么转成简体很多朋友对这方面很关心,我爱编程网整理了相关文章,供大家参考,一起来看一下吧!

本文目录一览:

php搜索 繁体怎么转成简体

php搜索 繁体怎么转成简体

  PHP实现---汉字简体繁体转换
  这是以class包装好的简繁体转换的class,
  另外需要两个table档:
  1. 
  2. 
  程式如下: CCharset.php3
  <? //=====================================================
  // 程式员: Magic Jerry
  //
  // function Big5_Gb($str) => big5转GB for string
  // function Gb_Big5($str) => GB转Big5 for string
  //=====================================================
  class CCharset {
  var $gb_map="gb.map"; //如果要放到别的路径,要加上完整路径
  var $big5_map="big5.map"; //例如 ="/home/table/gb.map
  var $dep_char = 127;
  //-----------------------------------------------------------------
  function cbig5_gb($str,$fd) {
  $c=ord(substr($str,0,1));
  $x=ord(substr($str,1,1));
  $address=(($c-160)*510)+($x-1)*2;
  fseek($fd, $address);
  $hi=fgetc($fd);
  $lo=fgetc($fd);
  return "$hi$lo";
  }
  function cgb_big5($str,$fd) {
  $c=ord(substr($str,0,1));
  $x=ord(substr($str,1,1));
  $address=(($c-160)*510)+($x-1)*2;
  fseek($fd, $address);
  $hi=fgetc($fd);
  $lo=fgetc($fd);
  return "$hi$lo";
  }
  //-----------------------------------------------------------------
  function Big5_Gb($str) {
  $fd = fopen ($this->gb_map, "r");
  $str=str_replace("charset=big5","charset=gb2312", $str);
  $outstr="";
  for($i=0;$i<strlen($str);$i++) {
  $ch=ord(substr($str,$i,1));
  if($ch > $this->dep_char) {
  $outstr.=$this->cbig5_gb(substr($str,$i,2),$fd);
  $i++;
  } else {
  $outstr.=substr($str,$i,1);
  }
  }
  fclose ($fd);
  return $outstr;
  }
  //-----------------------------------------------------------------
  function Gb_Big5($str) {
  $fd = fopen ($this->big5_map, "r");
  $str=str_replace("charset=gb2312","charset=big5", $str);
  $outstr="";
  for($i=0;$i<strlen($str);$i++) {
  $ch=ord(substr($str,$i,1));
  if($ch > $this->dep_char) {
  $outstr.=$this->cgb_big5(substr($str,$i,2),$fd);
  $i++;
  } else {
  $outstr.=substr($str,$i,1);
  }
  }
  fclose ($fd);
  return $outstr;
  }
  }
  ?>
  ===================================================================
  使用范例:
  <?
  // Designer: Magic Jerry
  //====直接转换文字串 的使用方法========
  include("CCharset.php3");
  $obj=new CCharset;
  $big5="这是一个big5的文字串";
  $tgb=$obj->Big5_Gb($big5);
  echo $tgb; //===> $tgb为转换好的gb码字串
  $tbig5=$obj->Gb_Big5($tgb);
  echo $tbig5; // 又被转回来了: big5
  //======================================
  ?>
  <?
  //如果直接转换网页 或是档案
  // 语法 这个程式.php3?要转码的网页url或档案
  // example: 转换奇摩首页
  // 这个程式.php3?
  // 注意: 以下写法如遇到该网页有使用cookie,例如认证user,可能会被踢回,login错误..
  // 为什麼? 想想看吧... @_@
  include("CCharset.php3");
  $file=$QUERY_STRING;
  $fcontents = join( '', file( "$file" ) );
  $fcontents=str_replace("<head>","<head><base href=$file>", $fcontents);
  $code=new CCharset;
  $gb=$code->Big5_Gb($fcontents);
  echo $gb;
  ?>
  范例:
  <?
  if($func=="charset") {
  setcookie("CHAR_GB",$GB,time()+ 31536000);
  $t=time();
  $url="".$HTTP_HOST.$PHP_SELF."?".$QUERY_STRING;
  $url=str_replace("?func=charset&GB=1","", $url);
  $url=str_replace("?func=charset&GB=0","", $url);
  $url=str_replace("&func=charset&GB=1","", $url);
  $url=str_replace("&func=charset&GB=0","", $url);
  //echo $url;
  //echo "SET to Charset = $CHAR_GB";
  $t=time();
  echo "
  <script language=javascript>
  document.location='$url'
  </script>
  ";
  exit;
  }
  //phpinfo();
  if($CHAR_GB==1 && !$istran ) {
  include("CCharset.php3");
  if(strlen($QUERY_STRING)) $url="".$HTTP_HOST.$PHP_SELF."?".$QUERY_STRING."&istran=1";
  else $url="".$HTTP_HOST.$PHP_SELF."?istran=1";
  while (list ($key, $val) = each ($HTTP_COOKIE_VARS)) {
  //echo "$key => $val<br>";
  $url.="&".$key."=".urlencode($val);
  }
  $fcontents = join( '', file( "$url" ) );
  $code=new CCharset;
  $fcontents=$code->Big5_Gb($fcontents);
  //echo "转换过的 $CHAR_GB";
  echo $fcontents;
  exit;
  }
  /

php搜索 繁体怎么转成简体我爱编程网

PHP 可以利用同一个数据表做简体和繁体的网页吗?

繁体一般用BIG5编码,简体用GB2312
你可以使用UTF-8编码的数据库存储方式,PHP页面读取时
将UTF-8
转化为
BIG5(繁体)或
GB2312(简体)
来使用。
这是我的想法,没试过~~~

php搜索 繁体怎么转成简体

在PHP把SQL读取到的繁体BIG5编码转换成简体显示出来

我爱编程网(https://www.52biancheng.com)小编还为大家带来在PHP把SQL读取到的繁体BIG5编码转换成简体显示出来的相关内容。

echo mb_convert_encoding("你是我的朋友", "GB2312", "big5");
mb_convert_encoding 函数为php内部多字节字符串编码转换函数,可以在有需要的使用场合(如:解决在GB2312编码环境下使用Ajax产生的中文字乱码的问题)方便进行编码转换,以解决网页乱码的问题,使用非常方便,效率非常高,几乎支持所有编码

以上就是我爱编程网为大家带来的php搜索 繁体怎么转成简体,希望能帮助到大家!更多相关文章关注我爱编程网:www.52biancheng.com

免责声明:文章内容来自网络,如有侵权请及时联系删除。
与“php搜索 繁体怎么转成简体”相关推荐