PHP code example of endless-creativity / elephant-php
1. Go to this page and download the library: Download endless-creativity/elephant-php library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
endless-creativity / elephant-php example snippets
use EndlessCreativity\ElephantPhp\Converter;
$result = (new Converter())->convertToHtml('/path/to/file.docx');
echo $result->value; // semantic HTML
foreach ($result->messages as $message) {
fwrite(STDERR, "[{$message->type->value}] {$message->message}\n");
}
$result = (new Converter())->convertToMarkdown('/path/to/file.docx');
file_put_contents('article.md', $result->value);
$result = (new Converter())->extractRawText('/path/to/file.docx');
// Paragraphs are separated by "\n\n", everything else just contributes
// its descendant text. Useful for indexing/search pipelines.
echo $result->value;
use EndlessCreativity\ElephantPhp\Document\Image;
use EndlessCreativity\ElephantPhp\Image\ImageHandler;
$handler = new class implements ImageHandler {
public function attributes(Image $image): array {
$bytes = ($image->readBytes)();
$hash = hash('sha256', $bytes);
$ext = ['image/png' => 'png', 'image/jpeg' => 'jpg'][$image->contentType] ?? 'bin';
$path = "uploads/{$hash}.{$ext}";
file_put_contents(__DIR__ . "/public/{$path}", $bytes);
return ['src' => "/{$path}"];
}
};
$converter = new Converter(imageHandler: $handler);
use EndlessCreativity\ElephantPhp\Document\Run;
use EndlessCreativity\ElephantPhp\Document\Transforms;
// Force every run to bold before rendering.
$converter = new Converter(
transformDocument: Transforms::run(
static fn (Run $r): Run => new Run(children: $r->children, isBold: true),
),
);