php printf добавляет число к выводу

Я хотел отформатировать вывод, используя 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

Спасибо

Ответы на вопрос(2)

Есть ли какая-то конкретная причина, по которой вы используете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";
}
 01 июн. 2012 г., 13:59
Извините, просто перечитайте ваш ответ о форматировании с использованием printf.
 01 июн. 2012 г., 14:14
^ См. Правильный ответ MetalFrog, который является наоборот.
Решение Вопроса

Это не только потому, что выechoвprintf?

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
 glasspill01 июн. 2012 г., 14:18
В самом деле. Вы правы.

Ваш ответ на вопрос