43 lines
1.0 KiB
PHP
43 lines
1.0 KiB
PHP
<?php
|
|
// Helpers
|
|
function genericDeepCopy(mixed $data): mixed {
|
|
if (is_array($data)) {
|
|
$copy = [];
|
|
foreach ($data as $key => $value)
|
|
$copy[$key] = genericDeepCopy($value);
|
|
return $copy;
|
|
}
|
|
elseif (is_object($data)) {
|
|
// If the object supports a copy method.
|
|
if (method_exists($data, 'copy'))
|
|
return $data->copy();
|
|
// Use PHP's clone as fallback.
|
|
return clone $data;
|
|
}
|
|
else {
|
|
// Scalar variables.
|
|
return $data;
|
|
}
|
|
}
|
|
|
|
// Require all enums
|
|
require './enums/Propagation.php';
|
|
require './enums/Operator.php';
|
|
require './enums/Order.php';
|
|
require './enums/Charset.php';
|
|
require './enums/Collation.php';
|
|
require './enums/Type.php';
|
|
require './enums/Engine.php';
|
|
require './enums/Join.php';
|
|
|
|
// Require all classes
|
|
require './Database.php';
|
|
require './Conditionable.php';
|
|
require './Deletion.php';
|
|
require './Insertion.php';
|
|
require './Migration.php';
|
|
require './Query.php';
|
|
require './Schema.php';
|
|
require './Table.php';
|
|
require './Update.php';
|