Name String Order: Get person name and surname from a string

Recommend this page to a friend!
  Info   Documentation   View files (5)   Download .zip   Reputation   Support forum (2)   Blog    
Last Updated Ratings Unique User Downloads Download Rankings
2019-10-14 (9 months ago) 54%Total: 201 All time: 8,279 This week: 282
Version License PHP version Categories
name-string-order 1.0.11Custom (specified...5PHP 5, Text processing, Artificial in...
Description Author

This class can get person name and surname from a string.

It can take a string with the name of a person and attempts to detect the actual name by the right order.

The class can return the person first name, last name, or the complete name first with the first name or the last name.

Innovation Award
PHP Programming Innovation award nominee
April 2017
Number 7
The name of a person can be represented in different ways in different places. Sometimes the surname appears first, others times it appears last.

This class can take a look at a string with a person name and detect if the surname comes first or last. Then it can reformat the name according to whatever order is preferred in your PHP application.

Manuel Lemos
Picture of Peter Kahl
  Performance   Level  
Name: Peter Kahl <contact>
Classes: 37 packages by
Country: United Kingdom
Age: ???
All time rank: 46522 in United Kingdom
Week rank: 48 2 in United Kingdom
Innovation award
Innovation award
Nominee: 23x

Winner: 2x


Name String Order

Attempts to order a person's name as 'First Last', 'First Middle Last', 'Last First', and extracts 'First', 'Last' and 'Middle'.


Romanized Chinese name:

use peterkahl\nameStringOrder\nameStringOrder;

$nameObj = new nameStringOrder('WANG jing-jing');

echo $nameObj->getFirstLast(); # Jing-Jing Wang

echo $nameObj->getLastFirst(); # Wang Jing-Jing

echo $nameObj->getFirst();     # Jing-Jing

echo $nameObj->getLast();      # Wang

Russian name:

use peterkahl\nameStringOrder\nameStringOrder;

$nameObj = new nameStringOrder('???????? ???????????? ?????');

echo $nameObj->getFirstLast();       # ???????? ?????

echo $nameObj->getLastFirst();       # ????? ????????

echo $nameObj->getFirstMiddleLast(); # ???????? ???????????? ?????

echo $nameObj->getFirst();           # ????????

echo $nameObj->getMiddle();          # ????????????

echo $nameObj->getLast();            # ?????

Chinese name:

use peterkahl\nameStringOrder\nameStringOrder;

$nameObj = new nameStringOrder('???');

echo $nameObj->getFirst();     # ??

echo $nameObj->getLast();      # ?

Latin character name:

use peterkahl\nameStringOrder\nameStringOrder;

$nameObj = new nameStringOrder('Curie Marie');

echo $nameObj->getFirstLast(); # Marie Curie

echo $nameObj->getLastFirst(); # Curie Marie

echo $nameObj->getFirst();     # Marie

echo $nameObj->getLast();      # Curie
File Role Description
src (2 files)
composer.json Data Auxiliary data
LICENSE Lic. License text Doc. Documentation

  Files  /  src  
File Role Description
   dictionary-first-names.php Aux. Auxiliary script
   nameStringOrder.php Class Class source

 Version Control Unique User Downloads Download Rankings  
This week:0
All time:8,279
This week:282
User Ratings User Comments (1)
 All time
It wont work if its an Indian name
3 years ago (Vivek moyal)

For more information send a message to info at phpclasses dot org.