图集1/2

正文 1815字数 316,261阅读


在php中将汉字转为拼音需要使用“overtrue/pinyin”拓展;
获得汉字拼音首字母的方法:首先使用“new Pinyin()”创建对象并赋值给“$pinyin”;
然后使用“$pinyin->abbr();”来将汉字转成拼音数组。

php汉字转拼音需要使用overtrue/pinyin拓展

一:安装overtrue/pinyin拓展
composer require overtrue/pinyin
Run code
Cut to clipboard


    overtrue/pinyin拓展GitHub地址

    二:overtrue/pinyin拓展简单使用

    overtrue/pinyin拼音转成拼音常见的转化方式:
    PINYIN_TONE #带音调的转化方式 PINYIN_KEEP_NUMBER #保留数字的转化方式 PINYIN_KEEP_ENGLISH#保留英文的转化方式 PINYIN_KEEP_PUNCTUATION#保留标点的转化方式 PINYIN_UMLAUT_V#使用 v 代替 yu的转化方式
    Run code
    Cut to clipboard


      1:汉字转成拼音数组

      (1):汉字转成无无音调的拼音
      $pinyin = new Pinyin(); $pinyin->convert('测试汉字转拼音');
      Run code
      Cut to clipboard


        输出数据为:
        ['ce', 'shi', 'han', 'zi', 'zhuan', 'pin', 'yin']

        (2):汉字转成带音调的拼音
        $pinyin = new Pinyin(); $pinyin->convert('测试汉字转拼音', PINYIN_TONE);
        Run code
        Cut to clipboard


          输出数据为:
          ['cè', 'shì', 'hàn', 'zì', 'zhuǎn', 'pīn', 'yīn']

          (3):汉字转拼音中lv拼音为lyu,使用此方法使用 v 代替 yu
          $pinyin = new Pinyin(); $pinyin->convert('吕氏春秋'); $pinyin->convert('吕氏春秋', PINYIN_UMLAUT_V);
          Run code
          Cut to clipboard


            第一个方法输出为:
            ['lyu', 'shi', 'chun', 'qiu']

            第二个方法输出为:
            ['lv', 'shi', 'chun', 'qiu']

            2:汉字转成拼音字符串
            $pinyin = new Pinyin(); $pinyin->permalink('测试汉字转拼音'); $pinyin->permalink('测试汉字转拼音', '.');
            Run code
            Cut to clipboard


              第一个方法输出为:
              ce-shi-han-zi-zhuan-pin-yin

              第二个方法输出为:
              ce.shi.han.zi.zhuan.pin.yi

              3:汉字转成首字母字符串
              $pinyin = new Pinyin(); $pinyin->abbr('测试汉字转拼音'); $pinyin->abbr('测试汉字转拼音', '-');
              Run code
              Cut to clipboard


                第一个方法输出为:
                cshzzpy

                第二个方法输出为:
                c-s-h-z-z-p-y

                4:整段汉字(带标点符号)转成拼音
                $pinyin = new Pinyin(); $pinyin->sentence('测试汉字转拼音,这是测试!!!'); $pinyin->sentence('测试汉字转拼音,这是测试!!!', '-');
                Run code
                Cut to clipboard


                  第一个方法输出为:
                  ce shi han zi zhuan pin yin, zhe shi ce shi!!!

                  第二个方法输出为:
                  ce-shi-han-zi-zhuan-pin-yin,-zhe-shi-ce-shi!!!

                  5:姓名汉字转拼音
                  有些汉字常见读音和作为姓名读音不同,例如仇,常见读音为chou,但是作为姓氏时都qiu
                  $pinyin = new Pinyin(); $pinyin->name('仇某某');
                  Run code
                  Cut to clipboard


                    输出结果为:
                    ['qiu', 'mou', 'mou']