Laravel 5 String Helpers: Getting the Singular Form of a String Value

The singular helper method is the logical opposite to the plural method: it will attempt to take a given $value and return the singular form of that word. The internal mechanisms are similar to the plural method.

Example Use

singular Special Cases

Any words, or word endings, in the following table will not be affected by the singular method. This is either because the resulting word is already singular, or because there is no inflection available. Word endings are denoted by the prefix *:

The following table lists the words that are not inflected by the singular method. This is either because the resulting word is already singular, or because there are no clear inflection rules available, or they handled separately (see the singular Special cases table).

Special Cases

Special Cases

Special Cases

Special Cases

Amoyese

bison

Borghese

bream

breeches

britches

buffalo

cantus

carp

chassis

clippers

code

caoitus

Congoese

contretemps

corps

data

debris

diabetese

djinn

eland

elk

equipment

Faroese

flounder

Foochowese

Furniture

gallows

Genevese

Genoese

Glibertese

graffiti

headquarters

herpes

hijinks

Hottentotese

information

innings

jackanapes

Kiplingese

Kongoese

Lucchese

Luggage

mackerel

Maltese

*media

mews

moose

mumps

Nankingese

news

nexus

Niasese

Pekingese

Piedmontese

pincers

Postoiese

pliers

Portuguese

proceedings

rabies

rice

rhinoceros

salmon

Sarawakese

scissors

seabass

sea-bass

series

Shavese

shears

siemens

species

staff

swine

testes

trousers

trout

tuna

Vermontese

Wenchowese

whitting

wildebeest

Yengeese

In addition to the general words that are not inflected by the singular method, the following tables list the word patterns or values that will also not be inflected by this method:

Words Not Inflected

Words Not Inflected

Words Not Inflected

Words Not Inflected

*nese

*rese

*lese

*mese

*deer

*fish

*measles

*ois

*pox

*sheep

*ss

data

police

pants

clothes

In addition to words that are not inflected, the method also handles some special cases. These are generally words that do not have a clear pragmatic method of handling the inflection of converting the word to its singular equivalent:

Plural Form

Singular Form

atlases

atlas

avalanches

avalanche

axes

axe

beefs

beef

caches

cache

cafes

cafe

chateaux

chateau

criteria

criterion

niveaux

niveau

children

child

cookies

cookie

corpuses

corpus

cows

cow

criteria

criterion

curricula

curriculum

curves

curve

demos

demo

dominos

domino

echoes

echo

emphases

emphasis

feet

foot

foes

foe

fungi

fungus

ganglions

ganglion

genies

genie

genera

genus

graffiti

graffito

graves

grave

hippopotami

hippopotamus

hoaxes

hoax

hoofs

hoof

humans

human

irises

iris

larvae

larva

leaves

leaf

loaves

loaf

men

man

media

medium

memoranda

memorandum

monies

money

mongooses

mongoose

mottoes

motto

moves

move

mythoi

mythos

neuroses

neurosis

niches

niche

nuclei

nucleus

numina

numen

oases

oasis

occiputs

occiput

octopuses

octopus

opuses

opus

oxen

ox

passersby

passerby

penises

penis

people

person

plateaux

plateau

runners-up

runner-up

sexes

sex

soliloquies

soliloquy

sons-in-law

son-in-law

syllabi

syllabus

testes

testis

thieves

thief

teeth

tooth

tornadoes

tornado

trilbys

trilby

turfs

turf

waves

wave

volcanoes

volcano

Global str_singular Helper Function

The str_singular function is a shortcut to calling Str::singular. This function is declared in the global namespace.