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


Posted in PHP onMarch 25, 2015

本文实例讲述了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程序设计有所帮助。

PHP 相关文章推荐
优化PHP代码的53条建议
Mar 27 PHP
php 安全过滤函数代码
May 07 PHP
PHP截断标题且兼容utf8和gb2312编码
Sep 22 PHP
使用PHP强制下载PDF文件示例
Jan 17 PHP
PHP静态文件生成类实例
Nov 29 PHP
微信公众平台开发之天气预报功能
Aug 31 PHP
php常量详细解析
Oct 27 PHP
老生常谈PHP位运算的用途
Mar 12 PHP
解决安装WampServer时提示缺少msvcr110.dll文件的问题
Jul 09 PHP
laravel 5.4中实现无限级分类的方法示例
Jul 27 PHP
thinkPHP5.0框架事务处理操作简单示例
Sep 07 PHP
PHP读取目录树的实现方法分析
Mar 22 PHP
PHP判断IP并转跳到相应城市分站的方法
Mar 25 #PHP
PHP使用in_array函数检查数组中是否存在某个值
Mar 25 #PHP
PHP+MYSQL实现用户的增删改查
Mar 24 #PHP
php创建多级目录的方法
Mar 24 #PHP
php简单获取目录列表的方法
Mar 24 #PHP
php简单获取文件扩展名的方法
Mar 24 #PHP
php控制文件下载速度的方法
Mar 24 #PHP
You might like
Codeigniter中mkdir创建目录遇到权限问题和解决方法
2014/07/25 PHP
浅谈Yii乐观锁的使用及原理
2017/07/25 PHP
关于php支持的协议与封装协议总结(推荐)
2017/11/17 PHP
javascript call方法使用说明
2010/01/11 Javascript
Javascript 设计模式(二) 闭包
2010/05/26 Javascript
JS制作手机端自适应缩放显示
2015/06/11 Javascript
关于Bootstrap弹出框无法调用问题的解决办法
2016/03/10 Javascript
JQuery的attr 与 val区别
2016/06/12 Javascript
微信小程序 中wx.chooseAddress(OBJECT)实例详解
2017/03/31 Javascript
Node.js中多进程模块Cluster的介绍与使用
2017/05/27 Javascript
layer实现关闭弹出层刷新父界面功能详解
2017/11/15 Javascript
vue项目优化之通过keep-alive数据缓存的方法
2017/12/11 Javascript
vue实现验证码输入框组件
2017/12/14 Javascript
Vue多系统切换实现方案
2018/06/05 Javascript
node使用Mongoose类库实现简单的增删改查
2018/11/08 Javascript
React实现全选功能
2020/08/25 Javascript
解决Antd 里面的select 选择框联动触发的问题
2020/10/24 Javascript
vue实现动态给id赋值,点击事件获取当前点击的元素的id操作
2020/11/09 Javascript
[05:03]显微镜下的DOTA2第十期——Ti3豪之超神幽鬼
2014/06/23 DOTA
[01:47]2018年度DOTA2最具人气解说-完美盛典
2018/12/16 DOTA
[36:41]完美世界DOTA2联赛循环赛FTD vs Magma第一场 10月30日
2020/10/31 DOTA
50行代码实现贪吃蛇(具体思路及代码)
2013/04/27 Python
python中的__slots__使用示例
2015/02/26 Python
Python实现简单的多任务mysql转xml的方法
2017/02/08 Python
python实现复制大量文件功能
2019/08/31 Python
python 定义类时,实现内部方法的互相调用
2019/12/25 Python
DRF框架API版本管理实现方法解析
2020/08/21 Python
ziaja齐叶雅官方海外旗舰店:来自波兰的天然护肤品牌
2017/01/02 全球购物
《陈涉世家》教学反思
2014/04/12 职场文书
2014年社区国庆节活动方案
2014/09/16 职场文书
2014年节能工作总结
2014/12/18 职场文书
打架检讨书
2015/01/27 职场文书
老人节主持词
2015/07/04 职场文书
Nginx性能优化之Gzip压缩设置详解(最大程度提高页面打开速度)
2022/02/12 Servers
Win10/Win11 任务栏替换成经典样式
2022/04/19 数码科技
Mysql开启外网访问
2022/05/15 MySQL