php取得字符串首字母的方法

本文实例讲述了php取得字符串首字母的方法。分享给大家供大家参考。具体实现方法如下:

<?php
$limit = array( //gb2312 拼音排序
  array(45217,45252), //A
  array(45253,45760), //B
  array(45761,46317), //C
  array(46318,46825), //D
  array(46826,47009), //E
  array(47010,47296), //F
  array(47297,47613), //G
  array(47614,48118), //H
  array(0,0),     //I
  array(48119,49061), //J
  array(49062,49323), //K
  array(49324,49895), //L
  array(49896,50370), //M
  array(50371,50613), //N
  array(50614,50621), //O
  array(50622,50905), //P
  array(50906,51386), //Q
  array(51387,51445), //R
  array(51446,52217), //S
  array(52218,52697), //T
  array(0,0),     //U
  array(0,0),     //V
  array(52698,52979), //W
  array(52980,53688), //X
  array(53689,54480), //Y
  array(54481,55289), //Z
);
$str="A:这是一个测试程序1";
$str= iconv("UTF-8","gb2312", $str);
echo $str."</br>";
$i=0;
while($i<strlen($str) ) {
  $tmp=bin2hex(substr($str,$i,1));
  if($tmp>='B0'){ //汉字的开始
    $t=getLetter(hexdec(bin2hex(substr($str,$i,2))));
    printf("%c",$t==-1 ? '*' : $t );
    $i+=2;
  }
  else{
    printf("%s",substr($str,$i,1));
    $i++;
  }
}
function getLetter($num){
  global $limit;
  $char_index=65;
  foreach($limit as $k=>$v){
    if($num>=$v[0] && $num<=$v[1]){
      $char_index+=$k;
      return $char_index;
    }
  }
  return -1;
}
?>

希望本文所述对大家的php程序设计有所帮助。

(0)

相关推荐

  • php实现字符串首字母转换成大写的方法

    本文实例讲述了php实现字符串首字母转换成大写的方法.分享给大家供大家参考.具体分析如下: php中可以通过ucfirst函数将一个字符串中的第一个字母转换成大写,而ucwords函数可以将一个字符串中每个单词的首字母转换成大写 <?php $string = "php string functions are easy to use."; $sentence = ucfirst($string); $title = ucwords($string); print("$

  • PHP针对字符串开头和结尾的判断方法

    本文实例讲述了PHP针对字符串开头和结尾的判断方法.分享给大家供大家参考,具体如下: //变量: $s1 = "dotcoo world!"; $s2 = "dotcoo"; $s3 = "hello dotcoo"; //php判断字符串开头: var_dump(substr($s1, 0, strlen($s2)) === $s2); var_dump(strpos($s1, $s2) === 0); var_dump(strncmp($s1

  • php判断字符以及字符串的包含方法属性

    下面介绍使用方法: 1. strstr: 返回一个从被判断字符开始到结束的字符串,如果没有返回值,则不包含 复制代码 代码如下: <?php /*如手册上的举例*/ $email = 'user@example.com'; $domain = strstr($email, '@'); echo $domain; // prints @example.com ?> 2. stristr: 它和strstr的使用方法完全一样.唯一的区别是stristr不区分大小写. 3. strpos: 返回bo

  • php判断数组元素中是否存在某个字符串的方法

    方法一:采用in_array(value,array,type) type 可选.如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同. 复制代码 代码如下: $arr = array('可以','如何','方法','知道','沒有','不要');//in_array(value,array,type)$isin = in_array("如何2",$arr);if($isin){    echo "in====".$isin;}else{    ec

  • php读取文件内容至字符串中,同时去除换行、空行、行首行尾空格(Zjmainstay原创)

    复制代码 代码如下: <?php /* *读取文件内容至字符串中,同时去除换行.行首行尾空格. */ header("Content-type: text/html; charset=utf-8"); echo preg_replace('/((\s)*(\n)+(\s)*)/i',',',file_get_contents('./file.php'));//End_php //输出: aaaa,bbbb,cccc,dddd,eeee,ffff,gggg,hhhh,iiii,jj

  • PHP中去掉字符串首尾空格的方法

    第一种方法:通过php自带的函数 <?php /* trim 去除一个字符串两端空格, rtrim 是去除一个字符串右部空格, ltrim 是去除一个字符串左部空格. */ ?> <?php echo trim(" 空格 ")."<br>"; echo rtrim(" 空格 ")."<br>"; echo ltrim(" 空格 ")."<br>

  • php删除字符串末尾子字符,删除开始字符,删除两端字符(实现代码)

    今天在处理删除字符串两端的特定字符时遇到了下面的问题,先看例子<SPAN style="FONT-SIZE: 18px"></SPAN>  $str = 'akmumu/writedb.json';  我要做的是删除开始的akmumu,再删除末尾的.json,这样只保留有用的字符/writedb开始我使用的ltrim删除akmumu,再使用rtrim删除.json结果发现我理解trim错误了,trim的参数如下rtrim(string,charlist)他的参数

  • php简单判断两个字符串是否相等的方法

    本文实例讲述了php简单判断两个字符串是否相等的方法.分享给大家供大家参考.具体实现方法如下: <?php function strcomp($str1,$str2){ if($str1 == $str2){ return TRUE; }else{ return FALSE; } } echo strcomp("First string","Second string"); //Returns FALSE echo strcomp("A string

  • php 中文字符串首字母的获取函数分享

    复制代码 代码如下: function chineseFirst($str){ $str= iconv("UTF-8","gb2312", $str);    //如果程序是gbk的,此行就要注释掉 //判断字符串是否全都是中文    if (preg_match("/^[\x7f-\xff]/", $str))    {        $fchar=ord($str{0});           if($fchar>=ord("

  • php中判断字符串是否全是中文或含有中文的实现代码

    一,判断全是中文 复制代码 代码如下: $str="'324是"; if(!eregi("[^\x80-\xff]","$str")){ echo "全是中文"; }else{ echo "不是"; } 二,判断含有中文 复制代码 代码如下: $str = "中文"; if (preg_match("/[\x7f-\xff]/", $str)) { echo &quo

随机推荐