Получить месяц с датой, которая хранится в переменной времени PHP в формате «Ymd»
 Попробуйте date_parse_from_format() : 
 $date = "2010-08-12"; $d = date_parse_from_format("Ymd", $date); echo $d["month"]; 
 $date = "2010-10-10"; echo date("m", strtotime($date))?> 
 $parts = explode('-',$your_date_variable_in_php); $month = $parts[1]; 
http://php.net/manual/en/function.date.php
используйте эту ссылку. Я думаю, ваша проблема решена для любого формата даты.
  действительно ли он хранится в PHP?  Не в какой-то базе данных? 
  month(datefield) может сделать это в запросе mysql, например 
 echo date("F", strtotime("2010-08-13")); 
Вы можете использовать date () и strtotime () :
 <?php $date = "2010-08-13"; echo date("m",strtotime($date))."\n"; ?>