<?php
echo date('Y-m-d H:i:s', strtotime("06-02-2014 23:59"));
function mb_str_pad($str, $pad_len, $pad_str = ' ', $dir = STR_PAD_RIGHT, $encoding = NULL)
{
$encoding = $encoding === NULL ? mb_internal_encoding() : $encoding;
$padBefore = $dir === STR_PAD_BOTH || $dir === STR_PAD_LEFT;
$padAfter = $dir === STR_PAD_BOTH || $dir === STR_PAD_RIGHT;
$pad_len -= mb_strlen($str, $encoding);
$targetLen = $padBefore && $padAfter ? $pad_len / 2 : $pad_len;
$strToRepeatLen = mb_strlen($pad_str, $encoding);
$repeatTimes = ceil($targetLen / $strToRepeatLen);
$repeatedString = str_repeat($pad_str, max(0, $repeatTimes)); // safe if used with valid utf-8 strings
$before = $padBefore ? mb_substr($repeatedString, 0, floor($targetLen), $encoding) : '';
$after = $padAfter ? mb_substr($repeatedString, 0, ceil($targetLen), $encoding) : '';
return $before . $str . $after;
}
// same random testing...
foreach([STR_PAD_BOTH, STR_PAD_LEFT, STR_PAD_RIGHT] as $padType)
{
echo str_pad("FOO", 11, "aeo", $padType) . "\n";
echo mb_str_pad("Féé", 11, "àèò", $padType, "UTF-8") . "\n";
echo str_pad("FOO", 10, "aeo", $padType) . "\n";
echo mb_str_pad("FOO", 10, "àèò", $padType, "UTF-8") . "\n";
echo str_pad("BAAZ", 11, "aeo", $padType) . "\n";
echo mb_str_pad("BAAZ", 11, "àèò", $padType, "UTF-8") . "\n";
echo str_pad("BAAZ", 10, "aeo", $padType) . "\n";
echo mb_str_pad("BAAZ", 10, "àèò", $padType, "UTF-8") . "\n";
echo str_pad("FOOBAR", 6, "aeo", $padType) . "\n";
echo mb_str_pad("FOOBAR", 6, "àèò", $padType, "UTF-8") . "\n";
echo str_pad("FOOBAR", 1, "aeo", $padType) . "\n";
echo mb_str_pad("FOOBAR", 1, "àèò", $padType, "UTF-8") . "\n";
echo str_pad("FOOBAR", 0, "aeo", $padType) . "\n";
echo mb_str_pad("FOOBAR", 0, "àèò", $padType, "UTF-8") . "\n";
echo str_pad("FOOBAR", -10, "aeo", $padType) . "\n";
echo mb_str_pad("FOOBAR", -10, "àèò", $padType, "UTF-8") . "\n";
echo "--\n";
}
?>
- Output for 8.3.0 - 8.3.6
- Fatal error: Cannot redeclare mb_str_pad() in /in/VQoEh on line 17
Process exited with code 255. - Output for 5.4.0 - 5.4.45, 5.5.0 - 5.5.37, 5.6.0 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18
- 2014-02-06 23:59:00aeoaFOOaeoa
àèòàFééàèòà
aeoFOOaeoa
àèòFOOàèòà
aeoBAAZaeoa
àèòBAAZàèòà
aeoBAAZaeo
àèòBAAZàèò
FOOBAR
FOOBAR
FOOBAR
FOOBAR
FOOBAR
FOOBAR
FOOBAR
FOOBAR
--
aeoaeoaeFOO
àèòàèòàèFéé
aeoaeoaFOO
àèòàèòàFOO
aeoaeoaBAAZ
àèòàèòàBAAZ
aeoaeoBAAZ
àèòàèòBAAZ
FOOBAR
FOOBAR
FOOBAR
FOOBAR
FOOBAR
FOOBAR
FOOBAR
FOOBAR
--
FOOaeoaeoae
Fééàèòàèòàè
FOOaeoaeoa
FOOàèòàèòà
BAAZaeoaeoa
BAAZàèòàèòà
BAAZaeoaeo
BAAZàèòàèò
FOOBAR
FOOBAR
FOOBAR
FOOBAR
FOOBAR
FOOBAR
FOOBAR
FOOBAR
--
- Output for 4.4.2 - 4.4.9, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29
- Parse error: syntax error, unexpected '[' in /in/VQoEh on line 22
Process exited with code 255. - Output for 4.3.0 - 4.3.1, 4.3.5 - 4.3.11, 4.4.0 - 4.4.1, 5.0.0 - 5.0.5
- Parse error: parse error, unexpected '[' in /in/VQoEh on line 22
Process exited with code 255. - Output for 4.3.2 - 4.3.4
- Parse error: parse error in /in/VQoEh on line 22
Process exited with code 255.
preferences:
221.37 ms | 401 KiB | 379 Q