PHP 多维数组数字格式 returns A
PHP Multidimensional array number formatting returns A
我对数组元素的数字格式设置有疑问。无论元素值如何,它总是 returns 一个“A”字母。
$tab = array_map(function ($string) {
return preg_replace_callback( "/[0-9]+/", function ($matches) {
return number_format($matches[0], 2, ',', ' ');
}, $string);
}, $array);
我正在用地址 $tab['VII']['B']['podatek']['PTUG']
调用该值
这是数组的一部分:
$array = array(
...
"VII" => array(
...
"B" => array(
...
"podatek" => array(
...
"PTUG" => "789456123",
我也在将 tcpdf 与此文件一起使用,如果这会造成麻烦。我需要的是在适当的字段中调用特定的数组元素并将它们转换为:123 123,45 数字格式。
另外,需要将日期从 yyyy-mm-dd 格式化为 dd-mm-yyyy 并添加“r”。在日期之后。
您可以通过数组使用 array_walk_recursive() 到 运行。在回调中,添加不同的检查以修改每种情况下的值。
array_walk_recursive($array, function (&$val) {
// Format integers
if (filter_var($val, FILTER_VALIDATE_INT)) {
$val = number_format($val, 2, ',', ' ');
// Format dates
} elseif (preg_match('/^\d{4}-\d{2}-\d{2}$/', $val)) {
$parts = explode('-', $val);
$val = implode('-', array_reverse($parts));
}
});
我对数组元素的数字格式设置有疑问。无论元素值如何,它总是 returns 一个“A”字母。
$tab = array_map(function ($string) {
return preg_replace_callback( "/[0-9]+/", function ($matches) {
return number_format($matches[0], 2, ',', ' ');
}, $string);
}, $array);
我正在用地址 $tab['VII']['B']['podatek']['PTUG']
调用该值
这是数组的一部分:
$array = array(
...
"VII" => array(
...
"B" => array(
...
"podatek" => array(
...
"PTUG" => "789456123",
我也在将 tcpdf 与此文件一起使用,如果这会造成麻烦。我需要的是在适当的字段中调用特定的数组元素并将它们转换为:123 123,45 数字格式。
另外,需要将日期从 yyyy-mm-dd 格式化为 dd-mm-yyyy 并添加“r”。在日期之后。
您可以通过数组使用 array_walk_recursive() 到 运行。在回调中,添加不同的检查以修改每种情况下的值。
array_walk_recursive($array, function (&$val) {
// Format integers
if (filter_var($val, FILTER_VALIDATE_INT)) {
$val = number_format($val, 2, ',', ' ');
// Format dates
} elseif (preg_match('/^\d{4}-\d{2}-\d{2}$/', $val)) {
$parts = explode('-', $val);
$val = implode('-', array_reverse($parts));
}
});