kriswallsmith / Spork
Licence: mit
Experimental library for forking PHP
Stars: ✭ 595
Spork: PHP on a Fork
<?php
$manager = new Spork\ProcessManager();
$manager->fork(function() {
// do something in another process!
return 'Hello from '.getmypid();
})->then(function(Spork\Fork $fork) {
// do something in the parent process when it's done!
echo "{$fork->getPid()} says '{$fork->getResult()}'\n";
});
Example: Upload images to your CDN
Feed an iterator into the process manager and it will break the job into multiple batches and spread them across many processes.
<?php
$files = new RecursiveDirectoryIterator('/path/to/images');
$files = new RecursiveIteratorIterator($files);
$manager->process($files, function(SplFileInfo $file) {
// upload this file
});
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].