PHP code example of omegamvc / serializable-closure
1. Go to this page and download the library: Download omegamvc/serializable-closure 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/ */
omegamvc / serializable-closure example snippets
use Omega\SerializableClosure\SerializableClosure;
// Create a closure.
$closure = fn() => 'YOUR_STRING_HERE';
// Set a secret key for signing.
SerializableClosure::setSecretKey('secret');
// Serialize the closure
$serialized = serialize(new SerializableClosure($closure));
// Unserialize and get the closure.
$closure = unserialize($serialized)->getClosure();
// Print result.
echo $closure(); // Output: YOUR_STRING_HERE
use Omega\SerializableClosure\UnsignedSerializableClosure;
// Create a closure
$closure = fn($value) => strtoupper($value);
// Serialize the closure
$serialized = serialize(new UnsignedSerializableClosure($closure));
// Unserialize and get the closure
$unserialized = unserialize($serialized)->getClosure();
// Invoke the closure
echo $unserialized('hello'); // Output: HELLO
use Omega\SerializableClosure\SerializableClosure;
// Create a closure.
$closure = function() {
$anonymousClass = new class {
public function getMessage() : string {
return "Helloo from anonymous class!";
}
};
return $anonymousClass->getMessage();
};
// Serialize
$serialized = serialize(new SerializableClosure($closure));
// Unserialize
$unserializedClosure = unserialize($serialized);
//Invoke the closure
$result = $unserializedClosure();
echo $result; // Output: Helloo from anonymous class!
use Omega\SerializableClosure\UnsignedSerializableClosure;
// Create a closure
$anonymousFunction = function($name) {
return "Hello, $name!";
};
// Create UnsignedSerializableClosure
$unsignedClosure = new UnsignedSerializableClosure($anonymousFunction);
// Serialize
$serialized = serialize($unsignedClosure);
// Deserialize
$unserialized = unserialize($serialized);
// Invoke the closure
$result = $unserialized("Jhon");
// Echo the closure
echo $result; // Output: Hello, Jhon!
sh
// File name: /etc/php/your_php_version/mods_available/xdebug.ini
zend_extension=xdebug.so
xdebug.show_exception_trace=0
xdebug.mode=coverage
zend_assertion=1
assert.exception=1
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.