3

我想使用 printf 格式化一些输出,但由于某种原因它在每个项目之后输出一个数字。关于为什么会这样以及如何解决的任何想法?

$array = array("Mo" => "09:30-19:00",  
          "Di" => "09:30-19:00", 
          "So" => "geschlossen");

foreach( $array as $key => $value ){
     echo printf("%3s:%15s", $key, $value);
}

输出

Mo: 09:30-19:0019 Di: 09:30-19:0019 So: geschlossen19

谢谢

4

2 回答 2

5

不就是因为你在echoingprintf吗?

http://codepad.org/1KtxR9JF

<?php

$array = array("Mo" => "09:30-19:00",  
          "Di" => "09:30-19:00", 
          "So" => "geschlossen");

foreach( $array as $key => $value ){
     printf("%3s:%15s", $key, $value);
}

 Mo:    09:30-19:00 Di:    09:30-19:00 So:    geschlossen
于 2012-06-01T12:02:53.917 回答
0

您使用的有什么特别的原因,echo printf(...)而不仅仅是echo

如果不是,那么使用它会正确返回(不附加 19):

$array = array("Mo" => "09:30-19:00",  
          "Di" => "09:30-19:00", 
          "So" => "geschlossen");

foreach( $array as $key => $value ){
     echo "$key:$value";
}
于 2012-06-01T11:57:29.363 回答