diff options
author | Boris Verkhovskiy <boris.verk@gmail.com> | 2024-04-04 04:26:14 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-04 04:26:14 -0700 |
commit | 4d59048f0df8441e5ad2c2c440e8d54b0e9c11b6 (patch) | |
tree | fa2dbdd40da35b3c27f928f1112ea43193a7482e /php.html.markdown | |
parent | b38d4437120e700646a45dff68b7c4ff3f7109c0 (diff) | |
parent | 327001f58739489b41f6b1f7bbc8be900847b381 (diff) |
Merge branch 'master' into patch-2
Diffstat (limited to 'php.html.markdown')
-rw-r--r-- | php.html.markdown | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/php.html.markdown b/php.html.markdown index 57ba29c4..1ef52f68 100644 --- a/php.html.markdown +++ b/php.html.markdown @@ -92,9 +92,10 @@ $escaped = "This contains a \t tab character."; $unescaped = 'This just contains a slash and a t: \t'; // Enclose a variable in curly braces if needed -$apples = "I have {$number} apples to eat."; -$oranges = "I have ${number} oranges to eat."; -$money = "I have $${number} in the bank."; +$number = 23; +$apples = "I have {$number} apples to eat."; // => I have 23 apples to eat. +$oranges = "I have ${number} oranges to eat."; // => I have 23 oranges to eat. +$money = "I have $${number} in the bank."; // => I have $23 in the bank. // Since PHP 5.3, nowdocs can be used for uninterpolated multi-liners $nowdoc = <<<'END' @@ -109,7 +110,7 @@ $sgl_quotes END; // String concatenation is done with . -echo 'This string ' . 'is concatenated'; +echo 'This string ' . 'is concatenated'; // Returns 'This string is concatenated' // Strings can be passed in as parameters to echo echo 'Multiple', 'Parameters', 'Valid'; // Returns 'MultipleParametersValid' @@ -443,7 +444,7 @@ $bar('C'); // Prints "A - B - C" // You can call named functions using strings $function_name = 'add'; echo $function_name(1, 2); // => 3 -// Useful for programatically determining which function to run. +// Useful for programmatically determining which function to run. // Or, use call_user_func(callable $callback [, $parameter [, ... ]]); @@ -591,6 +592,12 @@ echo $my_class->property; // => "public" echo $my_class->instanceProp; // => "An instance property" $my_class->myMethod(); // => "MyClass" +// Nullsafe operators since PHP 8 +// You can use this when you're unsure if the abstraction of $my_class contains has a property/method +// it can be used in conjunction with the nullish coalesce operator to ensure proper value +echo $my_class->invalid_property // An error is thrown +echo $my_class?->invalid_property // => NULL +echo $my_class?->invalid_property ?? "public" // => "public" // Extend classes using "extends" class MyOtherClass extends MyClass |