title: Why doesn't sprintf() output anything?
body: <p>I've never used these functions before but after reading a lot about sprintf(), I decided I should get to know it.</p>
  
  <p>So I went ahead and did the following.</p>
  
  <pre><code>function currentDateTime() {
    list($micro, $Unixtime) = explode(" ",microtime());
    $sec= $micro + date("s", $Unixtime);
    $sec = mb_ereg_replace(sprintf('%d', $sec), "", ($micro + date("s", $Unixtime)));
    return date("Y-m-d H:i:s", $Unixtime).$sec;
  }
  
  sprintf(currentDateTime());
  </code></pre>
  
  <p>It prints nothing. Using the printf() function on the other hand:</p>
  
  <pre><code>printf(currentDateTime());
  </code></pre>
  
  <p>It prints the result just fine. So what's the difference between these 2 functions and how do I properly use the sprintf() function?</p>