Skip to content
/ CowSay Public

PHP port of CowSay because, oh, hell, I don't know why...

License

Notifications You must be signed in to change notification settings

Gipetto/CowSay

Repository files navigation

PHP CowSay

Release Version Packagist Version Build Status Moo, Cow

An extensible PHP port of the Linux Cowsay utility.

Requirements

  • Minimum: PHP 8.0.2+
  • Recommended: PHP 8.2+

Official PHP supported versions: https://www.php.net/supported-versions.php

Install

$ composer require Gipetto/CowSay

Quickstart

use CowSay\Cow;

$bessie = new Cow('Hello, Farm!');

// store the output in a variable
$output = $bessie->say();
echo $output;

// or just echo the object for direct output
echo $bessie;

Displays:

  ------------
< Hello, Farm! >
  ------------
          \   ^__^
           \  (oo)\_______
              (__)\       )\/\
                  ||----w |
                  ||     ||

Run php demo.php to see all the included cows and their traits.

Traits

Cows support a few traits. You can specify the Eyes, Tongue, Udder and, yes, you can specify Poop.

$bessie = new Cow('Hello, Farm!');
$bessie->setEyes('oO')
    ->setTongue('U')
    ->setPoop('@@@')
    ->setUdder('W');
echo $bessie;

Displays:

  ------------
< Hello, Farm! >
  ------------
          \   ^__^
           \  (oO)\_______
              (__)\       )\/\
               U  ||----W |
                  ||     || @@@

Extending CowSay

Adding New Carcases

CowSay is easily extended to add new carcases for your custom needs. See the Carcasses tutorial for more information.

Adding New Traits

It is easy to add new Traits to CowSay. See the Custom Traits documentation for more information.

Known Issues

  • Line length calculations are not fully understood for strings with longer byte length characters. ie: Chinese.

License

CowSay is licensed under The MIT License (MIT).

About

PHP port of CowSay because, oh, hell, I don't know why...

Resources

License

Stars

Watchers

Forks

Packages

No packages published