sql >> データベース >  >> RDS >> Mysql

PHPで、配列の内容をテーブルに表示する方法

    mysqlクライアントに近いもの 出力:

    $data = array(
        array(
            'group_id'            => '1',
            'group_supergroup_id' => '4',
            'group_deletable'     => '0',
            'group_label'         => 'default',
        ),
        array(
            'group_id'            => '8',
            'group_supergroup_id' => '1',
            'group_deletable'     => '1',
            'group_label'         => 'dbdfg',
        ),
    );
    
    if ( empty($data) ) {
        echo "Empty set";
    } else {
        // determine widths of titles
        $colWidths = array();
        foreach ( $data[0] as $title => $value ) {
            $colWidths[$title] = strlen($title);
        }
        // determine widths of columns
        foreach ( $data as $row ) {
            foreach ( $row as $title => $value ) {
                if ( is_null($value) ) {
                    $value = 'NULL';
                }
                if ( $colWidths[$title] < strlen($value) ) {
                    $colWidths[$title] = strlen($value);
                }
            }
        }
        // generate horizontal border
        $horizontalBorder = '+';
        foreach ( $colWidths as $title => $width ) {
            $horizontalBorder .= str_repeat('-', $width + 2) . "+";
        }
        $horizontalBorder .= "\n";
        // print titles
        echo $horizontalBorder;
        echo '|';
        foreach ( $data[0] as $title => $value ) {
            printf(" %-{$colWidths[$title]}s |", $title);
        }
        echo "\n";
        echo $horizontalBorder;
        // print contents
        foreach ( $data as $row ) {
            echo "|";
            foreach ( $row as $title => $value ) {
                if ( is_null($value) ) {
                    $value = 'NULL';
                }
                printf(" %-{$colWidths[$title]}s |", $value);
            }
            echo "\n";
        }
        echo $horizontalBorder;
    }
    


    1. PHPがWindowsでphp_pgsql.dllをロードしない

    2. androidsqliteで呼び出されないアップグレードメソッドについて

    3. MariaDBで接続の照合を表示する3つの方法

    4. Psycopg2は、小文字で始まるテーブル名を好みません