3v4l.org

run code in 300+ PHP versions simultaneously
<?php $adjectives = [ "Abaft", "Abandoned", "Abased", "Abashed", "Abasic", "Abbatial", "Abdicable", "Abdicant", "Abdicative", "Abdominal", "Abdominous", "Abducent", "Aberrant", "Aberrational", ]; $animals = [ "aardvark", "aardwolf", "abalone", "abyssiniancat", "abyssiniangroundhornbill", "acaciarat", "achillestang", "acornbarnacle", "acornweevil", "acornwoodpecker", "acouchi", "adamsstaghornedbeetle", "addax", "adder", ]; class AnimalIDs{ protected $adjectives = null; protected $animals = null; public function __construct($adjectives, $animals){ $this->adjectives = $adjectives; $this->animals = $animals; } public function get($adjectivesNum = 1,$format = 'dash'){ $result = ''; $delim = ''; for($n = 0; $n < $adjectivesNum; $n++){ if($format === 'dash'){ $result .= $delim . $this->adjectives[rand(0,count($this->adjectives) - 1)]; $delim = '-'; } } $result .= $delim . $this->animals[rand(0,count($this->animals) - 1)]; return $result; } } $a = new AnimalIDs($adjectives, $animals); echo $a->get()."\n"; echo $a->get(2)."\n";
Output for 7.3.1
Abdicant-acornbarnacle Abandoned-Abasic-abalone
Output for 7.3.0
Abdicative-aardvark Aberrant-Abased-acornwoodpecker
Output for 7.2.13
Abducent-acaciarat Abasic-Abasic-abalone
Output for 7.2.12
Abased-achillestang Abasic-Abashed-adamsstaghornedbeetle
Output for 7.2.11
Abdominous-achillestang Abased-Abdicant-abyssiniangroundhornbill
Output for 7.2.10
Abased-adder Aberrational-Abducent-acaciarat
Output for 7.2.9
Aberrational-abyssiniancat Abbatial-Abased-adamsstaghornedbeetle
Output for 7.2.8
Abandoned-abyssiniangroundhornbill Abashed-Abased-acouchi
Output for 7.2.7
Abdicative-aardwolf Abdominal-Abasic-achillestang
Output for 7.2.6
Aberrant-aardvark Aberrational-Abasic-acornweevil
Output for 7.2.5
Abdicant-acornwoodpecker Abdicant-Abased-acornweevil
Output for 7.2.4
Abdicant-aardwolf Abbatial-Abdominal-aardwolf
Output for 7.2.3
Abasic-adder Aberrational-Abased-acouchi
Output for 7.2.2
Abandoned-acouchi Abaft-Aberrant-abalone
Output for 7.2.1
Abbatial-acouchi Abdicant-Abdicative-acornweevil
Output for 7.2.0
Abandoned-acornwoodpecker Abashed-Abdicable-achillestang
Output for 7.1.25
Abdicative-acornwoodpecker Abdominous-Abdominous-acornwoodpecker
Output for 7.1.17
Aberrational-abyssiniangroundhornbill Aberrant-Abased-aardvark
Output for 7.1.16
Abducent-adamsstaghornedbeetle Abdicable-Abdominal-acouchi
Output for 7.1.15
Abbatial-acornbarnacle Abdicable-Abdominal-acornbarnacle
Output for 7.1.14
Aberrational-acornwoodpecker Aberrational-Abdicable-acornwoodpecker
Output for 7.1.13
Aberrational-acornwoodpecker Abdominous-Aberrational-addax
Output for 7.1.12
Abbatial-abyssiniangroundhornbill Abasic-Abdominal-adder
Output for 7.1.11
Aberrant-abyssiniangroundhornbill Abdicable-Abdominal-abalone
Output for 7.1.10
Aberrational-aardwolf Abandoned-Abbatial-aardvark
Output for 7.1.9
Abdominous-abalone Abducent-Abbatial-acornweevil
Output for 7.1.8
Abased-abyssiniangroundhornbill Abased-Abducent-adamsstaghornedbeetle
Output for 7.1.7
Aberrant-acornbarnacle Abdicable-Abaft-abalone
Output for 7.1.6
Abdominal-acornbarnacle Abbatial-Abdicant-acouchi
Output for 7.1.5
Abdicable-aardvark Abaft-Abandoned-aardvark
Output for 7.1.4
Abandoned-adamsstaghornedbeetle Abdicative-Abdominous-adamsstaghornedbeetle
Output for 7.1.3
Abaft-acornbarnacle Abducent-Abandoned-acornbarnacle
Output for 7.1.2
Abbatial-acaciarat Abasic-Abaft-adamsstaghornedbeetle
Output for 7.1.1
Abdominal-abyssiniancat Abased-Aberrational-acaciarat
Output for 7.1.0
Abaft-achillestang Abased-Abdominal-abalone

preferences:
69.27 ms | 401 KiB | 40 Q