Skip to content

Commit

Permalink
Add second option to english pluralizator
Browse files Browse the repository at this point in the history
  • Loading branch information
wapmorgan committed Jul 2, 2015
1 parent 989e1b6 commit 734f414
Show file tree
Hide file tree
Showing 3 changed files with 43 additions and 40 deletions.
5 changes: 4 additions & 1 deletion EnglishPlurality.php
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,10 @@ class EnglishPlurality extends BasicPlurality {

static public $consonants = array('b', 'c', 'd', 'f', 'g', 'h', 'j', 'k', 'l', 'm', 'n', 'p', 'q', 'r', 's', 't', 'v', 'x', 'z', 'w');

public function pluralize($word) {
public function pluralize($word, $count) {
if ($count == 1)
return $word;

$word = lower($word);
if (in_array($word, self::$without_paired_form))
return $word;
Expand Down
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,12 +63,12 @@ Supported languages:
```php
$dec = new morphos\RussianGeneralDeclension();
```

2. Check whether there are forms for this word (second arg is an animateness):
```php
var_dump($dec->hasForms('поле', false));
```

3. Get all forms of a word:
```php
var_dump($dec->getForms('поле', false)); // array[] {...}
Expand All @@ -78,7 +78,7 @@ Supported languages:
```php
var_dump($dec->getForm('поле', false, morphos\RussianCases::RODIT_2)); // поля
```

5. All forms for this word:
```
array(6) {
Expand All @@ -96,12 +96,12 @@ Supported languages:
string(8) "поле"
}
```

6. Get all forms of a plural word:
```php
var_dump($dec->pluralizeAllDeclensions('поле', false)); // array[] {...}
```

7. All forms for this plural word:
```
array(6) {
Expand Down Expand Up @@ -150,7 +150,7 @@ Supported languages:
$plu = new morphos\EnglishPlurality();
$word = 'foot';
$count = 10;
echo sprintf("%d %s", $count, $plu->pluralize($word));
echo sprintf("%d %s", $count, $plu->pluralize($word, $count));
```
prints `10 feet`

Expand Down
66 changes: 33 additions & 33 deletions tests/english_plurality_basic.phpt
Original file line number Diff line number Diff line change
Expand Up @@ -4,39 +4,39 @@ test for general plurality.
<?php
require dirname(__FILE__).'/../vendor/autoload.php';
$plu = new morphos\EnglishPlurality();
echo $plu->pluralize('ship')."\n";
echo $plu->pluralize('gun')."\n";
echo $plu->pluralize('boy')."\n";
echo $plu->pluralize('class')."\n";
echo $plu->pluralize('box')."\n";
echo $plu->pluralize('torpedo')."\n";
echo $plu->pluralize('army')."\n";
echo $plu->pluralize('navy')."\n";
echo $plu->pluralize('wolf')."\n";
echo $plu->pluralize('knife')."\n";
echo $plu->pluralize('chief')."\n";
echo $plu->pluralize('basis')."\n";
echo $plu->pluralize('crisis')."\n";
echo $plu->pluralize('radius')."\n";
echo $plu->pluralize('nucleus')."\n";
echo $plu->pluralize('curriculum')."\n";
echo $plu->pluralize('man')."\n";
echo $plu->pluralize('woman')."\n";
echo $plu->pluralize('child')."\n";
echo $plu->pluralize('foot')."\n";
echo $plu->pluralize('tooth')."\n";
echo $plu->pluralize('ox')."\n";
echo $plu->pluralize('goose')."\n";
echo $plu->pluralize('mouse')."\n";
echo $plu->pluralize('schoolboy')."\n";
echo $plu->pluralize('knowledge')."\n";
echo $plu->pluralize('progress')."\n";
echo $plu->pluralize('advise')."\n";
echo $plu->pluralize('ink')."\n";
echo $plu->pluralize('money')."\n";
echo $plu->pluralize('scissors')."\n";
echo $plu->pluralize('spectacles')."\n";
echo $plu->pluralize('trousers')."\n";
echo $plu->pluralize('ship', 2)."\n";
echo $plu->pluralize('gun', 2)."\n";
echo $plu->pluralize('boy', 2)."\n";
echo $plu->pluralize('class', 2)."\n";
echo $plu->pluralize('box', 2)."\n";
echo $plu->pluralize('torpedo', 2)."\n";
echo $plu->pluralize('army', 2)."\n";
echo $plu->pluralize('navy', 2)."\n";
echo $plu->pluralize('wolf', 2)."\n";
echo $plu->pluralize('knife', 2)."\n";
echo $plu->pluralize('chief', 2)."\n";
echo $plu->pluralize('basis', 2)."\n";
echo $plu->pluralize('crisis', 2)."\n";
echo $plu->pluralize('radius', 2)."\n";
echo $plu->pluralize('nucleus', 2)."\n";
echo $plu->pluralize('curriculum', 2)."\n";
echo $plu->pluralize('man', 2)."\n";
echo $plu->pluralize('woman', 2)."\n";
echo $plu->pluralize('child', 2)."\n";
echo $plu->pluralize('foot', 2)."\n";
echo $plu->pluralize('tooth', 2)."\n";
echo $plu->pluralize('ox', 2)."\n";
echo $plu->pluralize('goose', 2)."\n";
echo $plu->pluralize('mouse', 2)."\n";
echo $plu->pluralize('schoolboy', 2)."\n";
echo $plu->pluralize('knowledge', 2)."\n";
echo $plu->pluralize('progress', 2)."\n";
echo $plu->pluralize('advise', 2)."\n";
echo $plu->pluralize('ink', 2)."\n";
echo $plu->pluralize('money', 2)."\n";
echo $plu->pluralize('scissors', 2)."\n";
echo $plu->pluralize('spectacles', 2)."\n";
echo $plu->pluralize('trousers', 2)."\n";
?>
--EXPECT--
ships
Expand Down

0 comments on commit 734f414

Please sign in to comment.