heidilabs/markov-php

This package is abandoned and no longer maintained. No replacement package was suggested.

A simple markov chain experiment

0.4 2015-06-04 11:47 UTC

This package is auto-updated.

Last update: 2020-11-02 10:31:44 UTC


README

Warning: this project is highly experimental.

Usage

Just clone and run composer install to create the autoloader. Not necessary if you just want to use the CLI script.

Using the Library in your Project

markov-php is available on Packagist for installation through Composer. heidilabs/markov-php

    $ composer require heidilabs/markov-php "~0.2"

Demos

Word Chain

CLI:

    $ php chainer.php -r demos/resources/mobydick.txt

example output:

to cast anchor in the deep; for heavy chains are being dragged along the cycloid, my soapstone for example, will

Script:

    <?php
         
    require_once(__DIR__ . '/../vendor/autoload.php');
    
    $sample = file_get_contents(__DIR__ . '/resources/nietzsche.txt');
    
    $chain = new MarkovPHP\WordChain($sample, 2);
    $sentence = $chain->generate(10);
    
    echo "YOUR PIECE OF WISDOM FROM NIETZSCHE<br><br>";
    echo $sentence;

example output:

must be contrary to their pride, and also more mysterious, than one thinks: the capable man in the purity of his character

Word Chain - Theme

CLI:

    $ php chainer.php -r demos/resources/mobydick.txt -t love

example output:

love of neatness in seamen; some of whom would not have that ferule and buckle-screw; I'll be ready for them

    <?php
    require_once(__DIR__ . '/../vendor/autoload.php');
    
    $sample = file_get_contents(__DIR__ . '/resources/nietzsche.txt');
    
    $chain = new MarkovPHP\WordChain($sample, 2);
    $theme = "hate";
    $sentence = $chain->generate(10, $theme);
    
    echo "YOUR PIECE OF WISDOM FROM NIETZSCHE, ABOUT: $theme<br><br>";
    echo $sentence;

example output:

they hate thee, and me, and half-and-half, and impure!-- Ah, I cast hail-showers into the depths. Violently will my breast then heave;

Mixed Source

Combines two different sources and creates a simple chain with two connected parts:

    <?php
    require_once(__DIR__ . '/../vendor/autoload.php');
    
    $sample1 = file_get_contents(__DIR__ . '/resources/nietzsche.txt');
    $sample2 = file_get_contents(__DIR__ . '/resources/mobydick.txt');
    
    $chain = new \MarkovPHP\MixedSourceChain($sample1, $sample2);
    $sentence = $chain->generate();
    
    echo "RESULT:<br>";
    echo $sentence;

example output:

do so, proves that he is probably not only strong, she keeps so many moody secrets. The schools composing none