Sha256: 87866ca4b041980e42a9edcbd4bd5675f66f2fe614226d7b4702f41c77d7c952

Contents?: true

Size: 673 Bytes

Versions: 29

Compression:

Stored size: 673 Bytes

Contents

<?php

class Robot
{
    protected $name = null;

    protected $alphabet = '';

    public function __construct()
    {
        $this->alphabet = array_flip(str_split('ABCDEFGHIJKLMNOPQRSTUVWXYZ'));
    }

    public function getName()
    {
        if (is_null($this->name)) {
            $this->name = sprintf('%s%s', $this->getPrefix(), $this->getSuffix());
        }

        return $this->name;
    }

    protected function getPrefix()
    {
        return implode('', array_rand($this->alphabet, 2));
    }

    protected function getSuffix()
    {
        return strval(rand(100, 999));
    }

    public function reset()
    {
        $this->name = null;
    }
}

Version data entries

29 entries across 29 versions & 1 rubygems

Version Path
trackler-2.0.3.3 tracks/php/exercises/robot-name/example.php
trackler-2.0.3.2 tracks/php/exercises/robot-name/example.php
trackler-2.0.3.1 tracks/php/exercises/robot-name/example.php
trackler-2.0.3.0 tracks/php/exercises/robot-name/example.php
trackler-2.0.2.0 tracks/php/exercises/robot-name/example.php
trackler-2.0.1.2 tracks/php/exercises/robot-name/example.php
trackler-2.0.1.1 tracks/php/exercises/robot-name/example.php
trackler-2.0.1.0 tracks/php/exercises/robot-name/example.php
trackler-2.0.0.10 tracks/php/exercises/robot-name/example.php
trackler-2.0.0.9 tracks/php/exercises/robot-name/example.php
trackler-2.0.0.8 tracks/php/exercises/robot-name/example.php
trackler-2.0.0.7 tracks/php/exercises/robot-name/example.php
trackler-2.0.0.6 tracks/php/exercises/robot-name/example.php
trackler-2.0.0.5 tracks/php/exercises/robot-name/example.php
trackler-2.0.0.4 tracks/php/exercises/robot-name/example.php
trackler-2.0.0.3 tracks/php/exercises/robot-name/example.php
trackler-2.0.0.2 tracks/php/exercises/robot-name/example.php
trackler-2.0.0.1 tracks/php/exercises/robot-name/example.php
trackler-2.0.0.0 tracks/php/exercises/robot-name/example.php
trackler-1.0.4.1 tracks/php/exercises/robot-name/example.php