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

PHP中文网
リリース: 2016-05-22 17:22:22
オリジナル
1496 人が閲覧しました

                    

<?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 "
";
//     }
    $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);
ログイン後にコピー

                                   

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート