Sculpin\Core\Io\ConsoleIo::overwrite PHP Метод

overwrite() публичный Метод

{@inheritDoc}
public overwrite ( $messages, $newline = true, $size = null )
    public function overwrite($messages, $newline = true, $size = null)
    {
        // messages can be an array, let's convert it to string anyway
        $messages = join($newline ? "\n" : '', (array) $messages);
        // since overwrite is supposed to overwrite last message...
        if (!isset($size)) {
            // removing possible formatting of lastMessage with strip_tags
            $size = strlen(strip_tags($this->lastMessage));
        }
        // ...let's fill its length with backspaces
        $this->write(str_repeat("", $size), false);
        // write the new message
        $this->write($messages, false);
        $fill = $size - strlen(strip_tags($messages));
        if ($fill > 0) {
            // whitespace whatever has left
            $this->write(str_repeat(' ', $fill), false);
            // move the cursor back
            $this->write(str_repeat("", $fill), false);
        }
        if ($newline) {
            $this->write('');
        }
        $this->lastMessage = $messages;
    }