define("CURRENT\_DATE", date('Y-m-d'));
// One possible representation
echo CURRENT_DATE; # => 2021-01-05
# => CURRENT\_DATE is: 2021-01-05
echo 'CURRENT\_DATE is: ' . CURRENT_DATE;
Miscellaneous
Runtime defined Constants
fopen() mode
- | - |
---|---|
r |
Read |
r+ |
Read and write, prepend |
w |
Write, truncate |
w+ |
Read and write, truncate |
a |
Write, append |
a+ |
Read and write, append |
Regular expressions
$str = "Visit Quickref.me";
echo preg\_match("/qu/i", $str); # => 1
See: Regex in PHP
Nullsafe Operator
// As of PHP 8.0.0, this line:
$result = $repo?->getUser(5)?->name;
// Equivalent to the following code:
if (is\_null($repo)) {
$result = null;
} else {
$user = $repository->getUser(5);
if (is\_null($user)) {
$result = null;
} else {
$result = $user->name;
}
}
See also: Nullsafe Operator
Custom exception
class MyException extends Exception {
// do something
}
Usage
try {
$condition = true;
if ($condition) {
throw new MyException('bala');
}
} catch (MyException $e) {
// Handle my exception
}
Exception in PHP 8.0
$nullableValue = null;
try {
$value = $nullableValue ?? throw new InvalidArgumentException();
} catch (InvalidArgumentException) { // Variable is optional
// Handle my exception
echo "print me!";
}
Basic error handling
try {
// Do something
} catch (Exception $e) {
// Handle exception
} finally {
echo "Always print!";
}
Comments