Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class Pipeline
- {
- public static function make_pipeline(...$funcs)
- {
- return function($arg) use ($funcs)
- {
- // loop list function
- foreach($funcs as $function) {
- // check variable $value
- if(!isset($value))
- // run the function with param send
- $value = $function($arg);
- else
- // run the function with value after function
- $value = $function($value);
- }
- // send back value
- return $value;
- };
- }
- }
- $fun = Pipeline::make_pipeline(function($x) { return $x * 3; }, function($x) { return $x + 1; },
- function($x) { return $x / 2; });
- echo $fun(3); # should print 5
Add Comment
Please, Sign In to add comment