strtotime() doesn't return unix timestamp in custom view when $row->field_date is an English date
$row-&gt;field_date contains markup, not just the date/string value hence strtotime() won't/can't return a valid unix timestamp. To fix, try using strip_tags() around the returned value of $row-&gt;field_date like: 

strtotime(strip_tags((string)$row-&gt;field_date));


or use "Strip HTML tags" option checkbox under "Rewrite Results" in the "Configure field" dialog.