Merry Christmas and Happy New Year 2018

                                   /\
                                  /*\
                                  /vv\
                                 /vvv\
                                 /v*v*\
                                /vvvov\
                                /vOvvvv\
                               /vvvovvv\
                               /vov*vvvO\
                              /vvvvv*vvv\
                              /v*vvvOvvvv\
                             /ovvvvvvvvvv\
                             /vv*vvvvvvvvv\
                            /vvvvvO*vvvvv*\
                            /vvvvvOvoOvvOv*\
                           /vvvvvv*vvv*v*v*\
                           /vOvv*vv*vvovvOvo\
                          /vv*vOv*Ovvvv*OvOv\
                          /OOvvOvv*ovvOvvvvv*\
                         /vvvv*vOvvv*vvvvOvvv\
                         /v*vvvvovvvo*vvvvv**v\
                        /vvvvvvvv*vvvOovvvv*vv\
                        /vvvvvvv*vOvvv*vvvvvvvo\
                       /vv**v*vvvvvvvvvvv*v*vvv\
                       /vOvvvvvO*vvOovvvvvvvvvOv\
                      /OvvvvvvvOvvvOvOovv*v*vv*o\
                      /vv*vvvvv*v**vvvvvOvvOvovvv\
                     /vvovOv**vo*ovvvvvvvvOvvvvvv\
                     /v*vOvvvvvvvvvvO*vvvvvvvvvvvv\
                    /***v*vo*vvvvvvv*vvvvvvvvvvvvv\
                                 ||||
                                 ||||
Is random, refresh page :-)

Source :

<?php

//Alexey Yakovlev
//http://010soft.com

$toy_chars = "Oo*";
$left_char = "/";
$right_char = '\\';
$internal_char = "v";
$empty_char = "&nbsp;";
$new_line_char = "<BR>";
$stump_char = '|';

$tree_color = "green";
$stump_color = "#4c3e39";
$toys_colors = "#66f979,#6b73d8,#f3e30f,#f74c17"; //comma separated


$left_margin = 20;
$max_lines_height = 30;
$stump_height= 2;
$stump_width = 4;
$toy_ratio = 0.3;
$tree_ratio = 1.0;


$max_width = $max_lines_height * $tree_ratio;
$toy_colors_array = explode( ',', $toys_colors);

print( "<h1>Merry Christmas and Happy New Year 2018</h1>" );

$lines_text = '<span style="font-family: monospace;color: '.$tree_color.';">';

for( $line = 0; $line < $max_lines_height ; $line++ )
{
   $position_start = intval(($max_width - $line*$tree_ratio)/2);
   $lines_text .= str_repeat( $empty_char, $position_start + $left_margin);
   $lines_text .= $left_char;
   for( $ii = 0; $ii < $line * $tree_ratio; $ii++ )
   {
      if( $toy_ratio and rand( 0 , 1/$toy_ratio ) == 1 )
      {
         $curr_toy_char = substr( $toy_chars, rand( 0, strlen( $toy_chars)) -1 , 1);
         $curr_toy_color = $toy_colors_array[ rand(0, count($toy_colors_array) - 1 )];
         $lines_text .= "<span style='color:$curr_toy_color;'><b>".$curr_toy_char.'</b></span>';
      }
      else
      {
         $lines_text .= $internal_char;
      }
   }
   $lines_text .= $right_char.$new_line_char;
}

$stump_start_position = intval(($max_width-$stump_width)/2);

$stump_text = str_repeat( $empty_char, $stump_start_position + $left_margin );
$stump_text .= str_repeat( $stump_char, $stump_width ).$new_line_char;
$lines_text .= "<span style='color:$stump_color;'>".str_repeat($stump_text, $stump_height ).'</span>';
$lines_text .="</span>";

print( $lines_text );


?>