当前位置 : 主页 > 网络编程 > PHP >

PHP实现N*M的字符矩阵90度旋转

来源:互联网 收集:自由互联 发布时间:2021-06-28
?php //1、提取a.txt文件内容 $str = file_get_contents("a.txt"); //2、将str里面的内容转换成二维数组 $arr1 = preg_split("/\\n/", $str); for ($i=0;$icount($arr1);$i++){ $arr2[$i] = preg_split("/,/", $arr1[$i]); } print_r($a
 
<?php
  
    //1、提取a.txt文件内容
   $str = file_get_contents("a.txt"); 
   //2、将str里面的内容转换成二维数组
   $arr1 = preg_split("/\\n/", $str);
   for ($i=0;$i<count($arr1);$i++){
       $arr2[$i] = preg_split("/,/", $arr1[$i]);
   }
    print_r($arr2);
    //3、获取新数组的行列数
    //新数组arr3的行数为原数组arr2的列数
    $rows = count($arr2[0]);
    //新数组arr3的列数为原数组arr2的行数
    $columns = count($arr2);
    //原数组arr2的行数
    $oldrows = count($arr2);
    echo $oldrows;
    for ($i=0;$i<$rows;$i++){
        for ($j=0;$j<$columns;$j++){
            $x = $oldrows-$j-1;
            $arr3[$i][$j] = preg_replace("/(\\n|\\r)/", "", $arr2[$x][$i]);
        }
    }
      
//     foreach ($arr3 as $a){
//         print_r($a);echo "<br>";
//     }
    $result = "";
    foreach ($arr3 as  $a){
        for ($i=0;$i<count($a);$i++){
            if ($i == count($a)-1){
                $result = $result.$a[$i]."\\n";
            }else {
                $result = $result.$a[$i].",";
            }
        }
    }
    file_put_contents("result.txt", $result);

网友评论