sql >> Databasteknik >  >> RDS >> Mysql

Skriva ut resultat av en SELECT-fråga som förformaterad text i PHP?

sprintf är din vän, om du måste ha en icke-HTML-utmatning med fast bredd.

ETA:

//id: integer, max width 10
//code: string max width 2

$divider=sprintf("+%-10s+%-13s+",'-','-');

$lines[]=$divider;
$lines[]=sprintf("|%10s|%13s|",'id','countryCode'); //header
$lines[]=$divider;

while($line=$records->fetch_assoc()) {
    //store the formatted output
    $lines[]=sprintf("| %10u | %2.2s |", $line['id'],$line['code']);
}
$table=implode("\n",$lines);
echo $table;

Om du vill skriva ut direkt istället för att lagra resultaten, använd printf istället - samma syntax. Det finns en rimlig PHP (s)printf-handledning här .



  1. Postgres SQL-tillstånd:22P02

  2. Hur får jag information om datum/tid från en TIMESTAMP-kolumn?

  3. Problem med installation av Ruby on Rails - Hur använder man WAMP MySQL-installation?

  4. Entity Framework Core jsonb kolumntyp