热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php汉字转化拼音领域博主,php汉字转拼音

本文目录一览:1、如何做网站php汉字转拼音带有声调和无声调

本文目录一览:


  • 1、如何做网站php汉字转拼音带有声调和无声调


  • 2、PHP 中文转拼音并首字母大写


  • 3、php 中文转拼音首字母问题


  • 4、PHP汉字转拼音?如何把每个汉字拆分出来?


  • 5、php汉字转拼音问题 下


  • 6、php字符串对应替换(把一些拼音换成对应的汉字)

如何做网站php汉字转拼音带有声调和无声调

1、如果你用过smarty模板引擎、MVC类似框架如tp,那么你自己写一个框架噢!

2、你要对php的继承实现以及其中的小知识点熟知;

3、先列出你的框架目录,什么地方放什么,然后写你的配置文件

4、用到的高频函数有:require 、 require_once 、 file_exites等!

如:sybase_connect连上数据库。

语法: int sybase_connect(string [servername], string [username], string [password]);

返回值: 整数函数种类: 数据库功能 本函数用来打开与 Sybase 数据库的连接。

参数 servername 为欲连上的数据库服务器名称。

参数 username 及 password 可省略,分别为连接使用的帐号及密码。

使用本函数需注意早点关闭数据库,以减少系统的负担。

连接成功则返回数据库的连接代号,失败返回 false 值。

PHP 中文转拼音并首字母大写

?php

function getfirstchar($s0){   

    $fchar = ord($s0{0});

    if($fchar = ord("A") and $fchar = ord("z") )return strtoupper($s0{0});

    $s1 = iconv("UTF-8","gb2312", $s0);

    $s2 = iconv("gb2312","UTF-8", $s1);

    if($s2 == $s0){$s = $s1;}else{$s = $s0;}

    $asc = ord($s{0}) * 256 + ord($s{1}) - 65536;

    if($asc = -20319 and $asc = -20284) return "A";

    if($asc = -20283 and $asc = -19776) return "B";

    if($asc = -19775 and $asc = -19219) return "C";

    if($asc = -19218 and $asc = -18711) return "D";

    if($asc = -18710 and $asc = -18527) return "E";

    if($asc = -18526 and $asc = -18240) return "F";

    if($asc = -18239 and $asc = -17923) return "G";

    if($asc = -17922 and $asc = -17418) return "H";

    if($asc = -17417 and $asc = -16475) return "J";

    if($asc = -16474 and $asc = -16213) return "K";

    if($asc = -16212 and $asc = -15641) return "L";

    if($asc = -15640 and $asc = -15166) return "M";

    if($asc = -15165 and $asc = -14923) return "N";

    if($asc = -14922 and $asc = -14915) return "O";

    if($asc = -14914 and $asc = -14631) return "P";

    if($asc = -14630 and $asc = -14150) return "Q";

    if($asc = -14149 and $asc = -14091) return "R";

    if($asc = -14090 and $asc = -13319) return "S";

    if($asc = -13318 and $asc = -12839) return "T";

    if($asc = -12838 and $asc = -12557) return "W";

    if($asc = -12556 and $asc = -11848) return "X";

    if($asc = -11847 and $asc = -11056) return "Y";

    if($asc = -11055 and $asc = -10247) return "Z";

    return null;

}

function make_semiangle($str){

    $arr = array('0' = '0', '1' = '1', '2' = '2', '3' = '3', '4' = '4', '5' = '5', '6' = '6', '7' = '7', '8' = '8', '9' = '9', 'A' = 'A', 'B' = 'B', 'C' = 'C', 'D' = 'D', 'E' = 'E', 'F' = 'F', 'G' = 'G', 'H' = 'H', 'I' = 'I', 'J' = 'J', 'K' = 'K', 'L' = 'L', 'M' = 'M', 'N' = 'N', 'O' = 'O', 'P' = 'P', 'Q' = 'Q', 'R' = 'R', 'S' = 'S', 'T' = 'T', 'U' = 'U', 'V' = 'V', 'W' = 'W', 'X' = 'X', 'Y' = 'Y', 'Z' = 'Z', 'a' = 'a', 'b' = 'b', 'c' = 'c', 'd' = 'd', 'e' = 'e', 'f' = 'f', 'g' = 'g', 'h' = 'h', 'i' = 'i', 'j' = 'j', 'k' = 'k', 'l' = 'l', 'm' = 'm', 'n' = 'n', 'o' = 'o', 'p' = 'p', 'q' = 'q', 'r' = 'r', 's' = 's', 't' = 't', 'u' = 'u', 'v' = 'v', 'w' = 'w', 'x' = 'x', 'y' = 'y', 'z' = 'z', '(' = '(', ')' = ')', '〔' = '[', '〕' = ']', '【' = '[', '】' = ']', '〖' = '[', '〗' = ']', '“' = '"', '”' = '"', '‘' = '\'', '’' = '\'', '{' = '{', '}' = '}', '《' = '', '》' = '', '%' = '%', '+' = '+', '—' = '-', '-' = '-', '~' = '-', ':' = ':', '。' = '.', '、' = ',', ',' = ',', ';' = ';', '?' = '?', '!' = '!', '…' = '...', '‖' = '|', '|' = '|', '〃' = '"', ' ' = ' ');

    return strtr($str, $arr);

}

function pinyin1($zh){

    $zh = make_semiangle($zh);

    $ret = "";

    $s1 = iconv("UTF-8","gb2312", $zh);

    $s2 = iconv("gb2312","UTF-8", $s1);

    if($s2 == $zh){$zh = $s1;}

    for($i = 0; $i  strlen($zh); $i++){

        $s1 = substr($zh,$i,1);

        $p = ord($s1);

        if($p  160){

            $s2 = substr($zh,$i++,2);

            $ret .= getfirstchar($s2);

        }else{

            $ret .= $s1;

        }

    }

    return $ret;

}

//用法

echo pinyin1('中文获取首字母大写,‘支持’全角“的”转化!');

?

数字跟英文的全角被百度自动转了,如果需要下载附件源码

php 中文转拼音首字母问题

原始代码有些问题,我做了些更改,原地址github 的 chenall/chenall/blob/master/php/tools/ZH-cn_TO_pinyin.php

?php

/*

    中文汉字转拼音首字母的PHP简易实现方法.

    要求: 只能是GB2312码表里面中文字符

    转换得到字符串对应的拼音首字母大写.

    用法:

    echo zh2py::conv('Chinese 中华人民共和国');//Chinese ZHRMGHG

    或

    $py = new zh2py;

    echo $py-conv('Chinese 中华人民共和国');//Chinese ZHRMGHG

*/

class zh2py

{

    //根据汉字区位表

    //我们可以看到从16-55区之间是按拼音字母排序的,所以我们只需要判断某个汉字的区位码就可以得知它的拼音首字母.

    //区位表第一部份,按拼音字母排序的.

    //16区-55区

    /*

        'A'=0xB0A1, 'B'=0xB0C5, 'C'=0xB2C1, 'D'=0xB4EE, 'E'=0xB6EA, 'F'=0xB7A2, 'G'=0xB8C1,'H'=0xB9FE,

    'J'=0xBBF7, 'K'=0xBFA6, 'L'=0xC0AC, 'M'=0xC2E8, 'N'=0xC4C3, 'O'=0xC5B6, 'P'=0xC5BE,'Q'=0xC6DA,

    'R'=0xC8BB, 'S'=0xC8F6, 'T'=0xCBFA, 'W'=0xCDDA, 'X'=0xCEF4, 'Y'=0xD1B9, 'Z'=0xD4D1

    */

    private static $FirstTable = array(

    0xB0C5, 0xB2C1, 0xB4EE, 0xB6EA, 0xB7A2, 0xB8C1, 0xB9FE, 0xBBF7, 0xBFA6, 0xC0AC, 0xC2E8,

    0xC4C3, 0xC5B6, 0xC5BE, 0xC6DA, 0xC8BB, 0xC8F6, 0xCBFA, 0xCDDA, 0xCEF4, 0xD1B9, 0xD4D1,0xD7FA

    );

    private static $FirstLetter = "ABCDEFGHJKLMNOPQRSTWXYZ";

    //区位表第二部份,不规则的,下面的字母是每个区里面对应字的拼音首字母.从网上查询整理出来的,可能会有部份错误.

    //56区-87区

    private static $SecondTable = array(

        "CJWGNSPGCGNEGYPBTYYZDXYKYGTZJNMJQMBSGZSCYJSYYFPGKBZGYDYWJKGKLJSWKPJQHYJWRDZLSYMRYPYWWCCKZNKYYG",

        "TTNGJEYKKZYTCJNMCYLQLYPYSFQRPZSLWBTGKJFYXJWZLTBNCXJJJJTXDTTSQZYCDXXHGCKBPHFFSSTYBGMXLPBYLLBHLX",

        "SMZMYJHSOJNGHDZQYKLGJHSGQZHXQGKXZZWYSCSCJXYEYXADZPMDSSMZJZQJYZCJJFWQJBDZBXGZNZCPWHWXHQKMWFBPBY",

        "DTJZZKXHYLYGXFPTYJYYZPSZLFCHMQSHGMXXSXJYQDCSBBQBEFSJYHWWGZKPYLQBGLDLCDTNMAYDDKSSNGYCSGXLYZAYPN",

        "PTSDKDYLHGYMYLCXPYCJNDQJWXQXFYYFJLEJPZRXCCQWQQSBZKYMGPLBMJRQCFLNYMYQMSQYRBCJTHZTQFRXQHXMQJCJLY",

        "QGJMSHZKBSWYEMYLTXFSYDXWLYCJQXSJNQBSCTYHBFTDCYZDJWYGHQFRXWCKQKXEBPTLPXJZSRMEBWHJLBJSLYYSMDXLCL",

        "QKXLHXJRZJMFQHXHWYWSBHTRXXGLHQHFNMGYKLDYXZPYLGGSMTCFBAJJZYLJTYANJGBJPLQGSZYQYAXBKYSECJSZNSLYZH",

        "ZXLZCGHPXZHZNYTDSBCJKDLZAYFFYDLEBBGQYZKXGLDNDNYSKJSHDLYXBCGHXYPKDJMMZNGMMCLGWZSZXZJFZNMLZZTHCS",

        "YDBDLLSCDDNLKJYKJSYCJLKWHQASDKNHCSGAGHDAASHTCPLCPQYBSZMPJLPCJOQLCDHJJYSPRCHNWJNLHLYYQYYWZPTCZG",

        "WWMZFFJQQQQYXACLBHKDJXDGMMYDJXZLLSYGXGKJRYWZWYCLZMSSJZLDBYDCFCXYHLXCHYZJQSQQAGMNYXPFRKSSBJLYXY",

        "SYGLNSCMHCWWMNZJJLXXHCHSYZSTTXRYCYXBYHCSMXJSZNPWGPXXTAYBGAJCXLYXDCCWZOCWKCCSBNHCPDYZNFCYYTYCKX",

        "KYBSQKKYTQQXFCMCHCYKELZQBSQYJQCCLMTHSYWHMKTLKJLYCXWHEQQHTQKZPQSQSCFYMMDMGBWHWLGSLLYSDLMLXPTHMJ",

        "HWLJZYHZJXKTXJLHXRSWLWZJCBXMHZQXSDZPSGFCSGLSXYMJSHXPJXWMYQKSMYPLRTHBXFTPMHYXLCHLHLZYLXGSSSSTCL",

        "SLDCLRPBHZHXYYFHBMGDMYCNQQWLQHJJCYWJZYEJJDHPBLQXTQKWHLCHQXAGTLXLJXMSLJHTZKZJECXJCJNMFBYCSFYWYB",

        "JZGNYSDZSQYRSLJPCLPWXSDWEJBJCBCNAYTWGMPAPCLYQPCLZXSBNMSGGFNZJJBZSFZYNTXHPLQKZCZWALSBCZJXSYZGWK",

        "YPSGXFZFCDKHJGXTLQFSGDSLQWZKXTMHSBGZMJZRGLYJBPMLMSXLZJQQHZYJCZYDJWFMJKLDDPMJEGXYHYLXHLQYQHKYCW",

        "CJMYYXNATJHYCCXZPCQLBZWWYTWBQCMLPMYRJCCCXFPZNZZLJPLXXYZTZLGDLTCKLYRZZGQTTJHHHJLJAXFGFJZSLCFDQZ",

        "LCLGJDJZSNZLLJPJQDCCLCJXMYZFTSXGCGSBRZXJQQCTZHGYQTJQQLZXJYLYLBCYAMCSTYLPDJBYREGKLZYZHLYSZQLZNW",

        "CZCLLWJQJJJKDGJZOLBBZPPGLGHTGZXYGHZMYCNQSYCYHBHGXKAMTXYXNBSKYZZGJZLQJTFCJXDYGJQJJPMGWGJJJPKQSB",

        "GBMMCJSSCLPQPDXCDYYKYPCJDDYYGYWRHJRTGZNYQLDKLJSZZGZQZJGDYKSHPZMTLCPWNJYFYZDJCNMWESCYGLBTZZGMSS",

        "LLYXYSXXBSJSBBSGGHFJLYPMZJNLYYWDQSHZXTYYWHMCYHYWDBXBTLMSYYYFSXJCBDXXLHJHFSSXZQHFZMZCZTQCXZXRTT",

        "DJHNRYZQQMTQDMMGNYDXMJGDXCDYZBFFALLZTDLTFXMXQZDNGWQDBDCZJDXBZGSQQDDJCMBKZFFXMKDMDSYYSZCMLJDSYN",

        "SPRSKMKMPCKLGTBQTFZSWTFGGLYPLLJZHGJJGYPZLTCSMCNBTJBQFKDHBYZGKPBBYMTDSSXTBNPDKLEYCJNYCDYKZTDHQH",

        "SYZSCTARLLTKZLGECLLKJLQJAQNBDKKGHPJTZQKSECSHALQFMMGJNLYJBBTMLYZXDXJPLDLPCQDHZYCBZSCZBZMSLJFLKR",

        "ZJSNFRGJHXPDHYJYBZGDLQCSEZGXLBLGYXTWMABCHECMWYJYZLLJJYHLGNDJLSLYGKDZPZXJYYZLWCXSZFGWYYDLYHCLJS",

        "CMBJHBLYZLYCBLYDPDQYSXQZBYTDKYXJYYCNRJMPDJGKLCLJBCTBJDDBBLBLCZQRPYXJCJLZCSHLTOLJNMDDDLNGKATHQH",

        "JHYKHEZNMSHRPHQQJCHGMFPRXHJGDYCHGHLYRZQLCYQJNZSQTKQJYMSZSWLCFQQQXYFGGYPTQWLMCRNFKKFSYYLQBMQAMM",

        "MYXCTPSHCPTXXZZSMPHPSHMCLMLDQFYQXSZYJDJJZZHQPDSZGLSTJBCKBXYQZJSGPSXQZQZRQTBDKYXZKHHGFLBCSMDLDG",

        "DZDBLZYYCXNNCSYBZBFGLZZXSWMSCCMQNJQSBDQSJTXXMBLTXZCLZSHZCXRQJGJYLXZFJPHYMZQQYDFQJJLZZNZJCDGZYG",

        "CTXMZYSCTLKPHTXHTLBJXJLXSCDQXCBBTJFQZFSLTJBTKQBXXJJLJCHCZDBZJDCZJDCPRNPQCJPFCZLCLZXZDMXMPHJSGZ",

        "GSZZQLYLWTJPFSYASMCJBTZYYCWMYTZSJJLJCQLWZMALBXYFBPNLSFHTGJWEJJXXGLLJSTGSHJQLZFKCGNNNSZFDEQFHBS",

        "AQTGYLBXMMYGSZLDYDQMJJRGBJTKGDHGKBLQKBDMBYLXWCXYTTYBKMRTJZXQJBHLMHMJJZMQASLDCYXYQDLQCAFYWYXQHZ",

        );

    public static function utf8_to_gbk($string)//编码转换,必须转换成GB2312字符,这里只是简单的判断并不是很准确,可以自己写一个.

    {

    if (mb_check_encoding($string,'gb2312'))

        return $string;

    if (function_exists('iconv'))

        return iconv("utf-8","gb2312//IGNORE",$string);

    return mb_convert_encoding($string,'gb2312','utf-8'); 

    }

    public static function conv($str)

    {

    $str = self::utf8_to_gbk($str);

    $len = strlen($str);

    $newStr = '';

    for($i=0; $i$len ; ++$i)

    {

        $H = ord($str[$i]);

        $L = ord($str[$i+1]);

        //字符集非法

        if ($H  0xB0 ||  $L  0xA1 || $H  0xF7 || $L == 0xFF)

        {

        $newStr .= $str[$i];

        continue;

        }

        if ($H  0xD8)//($H = 0xB0  $H =0xD7)//查询文字在一级汉字区(16-55)

        {

        $W = ($H  8) | $L;

        foreach(self::$FirstTable as $key=$value)

        {

            if ($W  $value)

            {

            $newStr .= self::$FirstLetter[$key];

            break;

            }

        }

        }

        else// if (H = 0xD8  H = 0xF7)//查询中文在二级汉字区(56-87)

        $newStr .=self::$SecondTable[$H - 0xD8][$L-0xA1];

        ++$i;

    }

    return $newStr;

    }

}

echo zh2py::conv('妃');//F

PHP汉字转拼音?如何把每个汉字拆分出来?

使用explode就可以,例如:

?php

$s='阿a,啊a,茬cha,茶cha,嵖cha';

foreach(explode(',',$s) as $code){

$ch=substr($code,0,2);

$code=substr($code,2);

echo "$ch\t$codebr\n";

}

?

php汉字转拼音问题 下

你使用的模版技术吧。

模版技术实际上是把页面中所有 {?$pinyin?} 转换 为 ?php $pinyin ?对吧?

也就是把{? 转换为 ?php

把?}转换为 ? 。

有可能是你的{? 或 ?}也页面中的function {}冲突。

比如

......

return $restr;

}?

你的模版页面我没看到~所以不确定是不是这个问题。你可以换个模版标识试试。

如果在其他页面中function可以使用,说明这个function没问题,你就在模版页下手就行了。

php字符串对应替换(把一些拼音换成对应的汉字)

PHP str_ireplace() 函数使用一个字符串替换字符串中的另一些字符。

?php

$find = "anyang";

$replace = "安阳";

$arr = "anyang测试anyang";

$newstr = str_ireplace($find,$replace,$arr);

echo $newstr;

?

使用这个str_ireplace()就能替换了,而且还不用担心大小写问题,如果不用考虑大小写那就使用str_replace()即可!

参数如下:

str_ireplace(find,replace,string,count)

参数 描述

find 必需。规定要查找的值。

replace 必需。规定替换 find 中的值的值。

string 必需。规定被搜索的字符串。

count 可选。一个变量,对替换数进行计数。

欢迎采纳!


推荐阅读
  • 如何将TS文件转换为M3U8直播流:HLS与M3U8格式详解
    在视频传输领域,MP4虽然常见,但在直播场景中直接使用MP4格式存在诸多问题。例如,MP4文件的头部信息(如ftyp、moov)较大,导致初始加载时间较长,影响用户体验。相比之下,HLS(HTTP Live Streaming)协议及其M3U8格式更具优势。HLS通过将视频切分成多个小片段,并生成一个M3U8播放列表文件,实现低延迟和高稳定性。本文详细介绍了如何将TS文件转换为M3U8直播流,包括技术原理和具体操作步骤,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 浅析python实现布隆过滤器及Redis中的缓存穿透原理_python
    本文带你了解了位图的实现,布隆过滤器的原理及Python中的使用,以及布隆过滤器如何应对Redis中的缓存穿透,相信你对布隆过滤 ... [详细]
  • SQLite数据库CRUD操作实例分析与应用
    本文通过分析和实例演示了SQLite数据库中的CRUD(创建、读取、更新和删除)操作,详细介绍了如何在Java环境中使用Person实体类进行数据库操作。文章首先阐述了SQLite数据库的基本概念及其在移动应用开发中的重要性,然后通过具体的代码示例,逐步展示了如何实现对Person实体类的增删改查功能。此外,还讨论了常见错误及其解决方法,为开发者提供了实用的参考和指导。 ... [详细]
  • 探索聚类分析中的K-Means与DBSCAN算法及其应用
    聚类分析是一种用于解决样本或特征分类问题的统计分析方法,也是数据挖掘领域的重要算法之一。本文主要探讨了K-Means和DBSCAN两种聚类算法的原理及其应用场景。K-Means算法通过迭代优化簇中心来实现数据点的划分,适用于球形分布的数据集;而DBSCAN算法则基于密度进行聚类,能够有效识别任意形状的簇,并且对噪声数据具有较好的鲁棒性。通过对这两种算法的对比分析,本文旨在为实际应用中选择合适的聚类方法提供参考。 ... [详细]
  • DAO(Data Access Object)模式是一种用于抽象和封装所有对数据库或其他持久化机制访问的方法,它通过提供一个统一的接口来隐藏底层数据访问的复杂性。 ... [详细]
  • Visual Studio Code (VSCode) 是一款功能强大的源代码编辑器,支持多种编程语言,具备丰富的扩展生态。本文将详细介绍如何在 macOS 上安装、配置并使用 VSCode。 ... [详细]
  • 本文介绍如何使用 Python 的 DOM 和 SAX 方法解析 XML 文件,并通过示例展示了如何动态创建数据库表和处理大量数据的实时插入。 ... [详细]
  • php更新数据库字段的函数是,php更新数据库字段的函数是 ... [详细]
  • 秒建一个后台管理系统?用这5个开源免费的Java项目就够了
    秒建一个后台管理系统?用这5个开源免费的Java项目就够了 ... [详细]
  • SIoU Loss 的原理详解及代码实现分析
    本文详细解析了 SIoU Loss 的原理及其在边界框回归任务中的优势,并通过代码实现对其性能进行了深入分析。SIoU Loss 作为一种改进的损失函数,能够更有效地优化目标检测模型的边界框回归效果,提升模型的准确性和鲁棒性。文中还提供了具体的代码示例,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 优化后的标题:深入探讨网关安全:将微服务升级为OAuth2资源服务器的最佳实践
    本文深入探讨了如何将微服务升级为OAuth2资源服务器,以订单服务为例,详细介绍了在POM文件中添加 `spring-cloud-starter-oauth2` 依赖,并配置Spring Security以实现对微服务的保护。通过这一过程,不仅增强了系统的安全性,还提高了资源访问的可控性和灵活性。文章还讨论了最佳实践,包括如何配置OAuth2客户端和资源服务器,以及如何处理常见的安全问题和错误。 ... [详细]
  • Python 程序转换为 EXE 文件:详细解析 .py 脚本打包成独立可执行文件的方法与技巧
    在开发了几个简单的爬虫 Python 程序后,我决定将其封装成独立的可执行文件以便于分发和使用。为了实现这一目标,首先需要解决的是如何将 Python 脚本转换为 EXE 文件。在这个过程中,我选择了 Qt 作为 GUI 框架,因为之前对此并不熟悉,希望通过这个项目进一步学习和掌握 Qt 的基本用法。本文将详细介绍从 .py 脚本到 EXE 文件的整个过程,包括所需工具、具体步骤以及常见问题的解决方案。 ... [详细]
  • 本文详细介绍了在 Oracle 数据库中使用 MyBatis 实现增删改查操作的方法。针对查询操作,文章解释了如何通过创建字段映射来处理数据库字段风格与 Java 对象之间的差异,确保查询结果能够正确映射到持久层对象。此外,还探讨了插入、更新和删除操作的具体实现及其最佳实践,帮助开发者高效地管理和操作 Oracle 数据库中的数据。 ... [详细]
  • 在本文中,我们将为 HelloWorld 项目添加视图组件,以确保控制器返回的视图路径能够正确映射到指定页面。这一步骤将为后续的测试和开发奠定基础。首先,我们将介绍如何配置视图解析器,以便 SpringMVC 能够识别并渲染相应的视图文件。 ... [详细]
  • 宏基因组学经典文献重现(一):利用ggplot2进行散点图可视化分析
    宏基因组学经典文献重现(一):利用ggplot2进行散点图可视化分析 ... [详细]
author-avatar
手机用户2502885711
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有