diff --git a/src/Humanizer.Tests.Shared/Humanizer.Tests.Shared.projitems b/src/Humanizer.Tests.Shared/Humanizer.Tests.Shared.projitems
index 8518e6926..5624b7aab 100644
--- a/src/Humanizer.Tests.Shared/Humanizer.Tests.Shared.projitems
+++ b/src/Humanizer.Tests.Shared/Humanizer.Tests.Shared.projitems
@@ -80,6 +80,7 @@
+
diff --git a/src/Humanizer.Tests.Shared/Localisation/fil-PH/TimeSpanHumanizeTests.cs b/src/Humanizer.Tests.Shared/Localisation/fil-PH/TimeSpanHumanizeTests.cs
new file mode 100644
index 000000000..5a7cf12cf
--- /dev/null
+++ b/src/Humanizer.Tests.Shared/Localisation/fil-PH/TimeSpanHumanizeTests.cs
@@ -0,0 +1,99 @@
+using System;
+using Xunit;
+
+namespace Humanizer.Tests.Localisation.filPH
+{
+ [UseCulture("fil-PH")]
+ public class TimeSpanHumanizeTests
+ {
+ [Theory]
+ [Trait("Translation", "Google Translate")]
+ [InlineData(366, "1 taon")]
+ [InlineData(731, "2 taon")]
+ [InlineData(1096, "3 taon")]
+ [InlineData(4018, "11 taon")]
+ public void Years(int days, string expected)
+ {
+ Assert.Equal(expected, TimeSpan.FromDays(days).Humanize(maxUnit: Humanizer.Localisation.TimeUnit.Year));
+ }
+
+ [Theory]
+ [Trait("Translation", "Google Translate")]
+ [InlineData(31, "1 buwan")]
+ [InlineData(61, "2 buwan")]
+ [InlineData(92, "3 buwan")]
+ [InlineData(335, "11 buwan")]
+ public void Months(int days, string expected)
+ {
+ Assert.Equal(expected, TimeSpan.FromDays(days).Humanize(maxUnit: Humanizer.Localisation.TimeUnit.Year));
+ }
+
+ [Theory]
+ [Trait("Translation", "Google Translate")]
+ [InlineData(7, "1 linggo")]
+ [InlineData(14, "2 linggo")]
+ [InlineData(21, "3 linggo")]
+ [InlineData(77, "11 linggo")]
+ public void Weeks(int days, string expected)
+ {
+ Assert.Equal(expected, TimeSpan.FromDays(days).Humanize());
+ }
+
+ [Theory]
+ [Trait("Translation", "Google Translate")]
+ [InlineData(1, "1 araw")]
+ [InlineData(2, "2 araw")]
+ public void Days(int days, string expected)
+ {
+ Assert.Equal(expected, TimeSpan.FromDays(days).Humanize());
+ }
+
+ [Theory]
+ [Trait("Translation", "Google Translate")]
+ [InlineData(1, "1 oras")]
+ [InlineData(2, "2 oras")]
+ public void Hours(int hours, string expected)
+ {
+ Assert.Equal(expected, TimeSpan.FromHours(hours).Humanize());
+ }
+
+ [Theory]
+ [Trait("Translation", "Google Translate")]
+ [InlineData(1, "1 minuto")]
+ [InlineData(2, "2 minuto")]
+ public void Minutes(int minutes, string expected)
+ {
+ Assert.Equal(expected, TimeSpan.FromMinutes(minutes).Humanize());
+ }
+
+ [Theory]
+ [Trait("Translation", "Google Translate")]
+ [InlineData(1, "1 segundo")]
+ [InlineData(2, "2 segundo")]
+ public void Seconds(int seconds, string expected)
+ {
+ Assert.Equal(expected, TimeSpan.FromSeconds(seconds).Humanize());
+ }
+
+ [Theory]
+ [Trait("Translation", "Google Translate")]
+ [InlineData(1, "1 millisecond")]
+ [InlineData(2, "2 milliseconds")]
+ public void Milliseconds(int milliseconds, string expected)
+ {
+ Assert.Equal(expected, TimeSpan.FromMilliseconds(milliseconds).Humanize());
+ }
+
+ [Fact]
+ public void NoTime()
+ {
+ Assert.Equal("0 milliseconds", TimeSpan.Zero.Humanize());
+ }
+
+ [Fact]
+ public void NoTimeToWords()
+ {
+ Assert.Equal("walang oras", TimeSpan.Zero.Humanize(toWords: true));
+ }
+ }
+}
diff --git a/src/Humanizer/Configuration/FormatterRegistry.cs b/src/Humanizer/Configuration/FormatterRegistry.cs
index 9970c6a21..a6270c9f8 100644
--- a/src/Humanizer/Configuration/FormatterRegistry.cs
+++ b/src/Humanizer/Configuration/FormatterRegistry.cs
@@ -37,6 +37,7 @@ public FormatterRegistry() : base(new DefaultFormatter("en-US"))
RegisterDefaultFormatter("es");
RegisterDefaultFormatter("fa");
RegisterDefaultFormatter("fi-FI");
+ RegisterDefaultFormatter("fil-PH");
RegisterDefaultFormatter("hu");
RegisterDefaultFormatter("hy");
RegisterDefaultFormatter("id");