diff options
| author | Benjamin Southall <applemansigloo@gmail.com> | 2017-09-03 22:23:55 +0900 |
|---|---|---|
| committer | Benjamin Southall <applemansigloo@gmail.com> | 2017-09-03 22:23:55 +0900 |
| commit | adacad2338fbfa7e13154c1a1dbe0e51730cacc5 (patch) | |
| tree | 863a217e2a47893d365703319011e77d5efc8c4a /tools | |
| parent | eb10d4b011a459b3ad94039e17ca430dbbb6f7a4 (diff) | |
Attempt to fix multibyte padding in stats tool
Diffstat (limited to 'tools')
| -rwxr-xr-x | tools/stats.php | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/tools/stats.php b/tools/stats.php index cec8d2ab..00214842 100755 --- a/tools/stats.php +++ b/tools/stats.php @@ -1,5 +1,6 @@ #!/usr/bin/php <?php +mb_internal_encoding('utf-8'); require dirname(__FILE__) . '/inc/cli.php'; $variants = array(array("hour", 3600), array("day", 3600*24), array("3 days", 3600*24*3), @@ -15,9 +16,22 @@ print(str_repeat('=', 13+11*count($variants))); print("\n"); +function mb_str_pad ($input, $pad_length, $pad_string, $pad_type, $encoding="UTF-8") { + if (!$encoding) { + $diff = strlen($input) - mb_strlen($input); + } + else { + $diff = strlen($input) - mb_strlen($input, $encoding); + } + return str_pad($input, $pad_length + $diff, $pad_string, $pad_type); +} + + $q = query("SELECT uri FROM ``boards``"); while ($f = $q->fetch()) { - printf("%10s || ", $f['uri']); + $str = $f['uri']; + $str = mb_str_pad($str,10," ", STR_PAD_LEFT, "UTF-8"); + printf("%s || ", $str); foreach ($variants as $iter) { list($term, $time) = $iter; $qq = query(sprintf("SELECT COUNT(*) as count FROM ``posts_%s`` WHERE time > %d", $f['uri'], time()-$time)); |
