如何通过PHP将一串字符串倒序的打印出来?

  工作中,我们需要灵活的运用php的一些语法,今天通过倒序的打印一串字符的一个小实验,让我们了解数组Array与字符串之间的转换,字符串的截取,读取字符串长度的函数:  

  1.假如你要转换的字符串为 I AM CHEN XU YUAN ,首先,将该字符串赋给一个变量$str,可以通过$str_len查看该字符串长度

$str="I AM CHEN XU YUAN ";
//echo $str_len=strlen($str); 

 

  2.然后可以通过substr()函数来截取你想要转换的字符串部分  

// $str=substr($str,0,$str_len);

  3.通过explode()函数将字符串打印成数组,具体传参用法参考手册,注意第一个参数为空的话必须要有个空格!可用var_dump()打印出来

$str_arr=explode('  ',$str);

  //var_dump($str_ar);

 

  4.将数组翻转顺序,用一个新数组接收,array_reverse()是翻转数组顺序的函数:

$str_str_new=array_reverse($str_arr);

 

  5.然后再将数组转为字符串,与explode函数相反,数组转字符串的函数是implode()

  $str_last=implode("  ",$str_str_new);

 

  6.现在字符串被翻转了顺序,可用echo输出:

 echo '转换前: '.$str."<br>".'转换后:'. $str_last ."<hr>";

 

  输出效果:

  

  这样是将字符串分割为数组,数组调转顺序再组成字符串,同纯粹的字符串顺序翻转不一样--每个‘单词’内拼音的顺序是不变的。

  当然,直接用strrev()函数可以接将字符串调转顺序:  

$str="I am CHEN XU YUAN";
 $str_new=strrev($str);
 echo $str_new;

输出的是 NAUY UX NEHC MA I  除此外还有许多方法如for循环 等 ,如下:

    $str="IM CHEN XU YUAN ";
        function reverse_i($str){
           for ($i = 1; $i <= strlen($str); $i++){
          echo substr($str, -$i, 1);
     }
       return;
 }
   echo reverse_i($str);

不过for循环处理数字比较好,这样处理字符串不如直接用strrev()函数 ,此篇主要探讨字符串的倒序处理

 

 

 

  


 

posted @ 2017-04-14 20:45  庹明志的IT博客  阅读(6105)  评论(0编辑  收藏  举报