[PRES] [presentations] master: Add slide on pipes
[email protected] (Derick Rethans) Thu, 15 May 2025 08:12:59 +0000
| Newsgroups | php.pres |
|---|---|
| Message-ID | <[email protected]> |
Author: Derick Rethans (derickr)
Date: 2025-05-15T09:01:28+01:00
Commit: https://github.com/php/presentations/commit/ccebf2af85c4c00a603ec9894b060b7415d59bf5
Raw diff: https://github.com/php/presentations/commit/ccebf2af85c4c00a603ec9894b060b7415d59bf5.diff
Add slide on pipes
Changed paths:
A slides/internals/php85-pipes.xml
M php-phpday25.xml
M slides/internals/php85-closures-in-constant-expressions.xml
Diff:
diff --git a/php-phpday25.xml b/php-phpday25.xml
index b8cfddca..3f0fc375 100644
--- a/php-phpday25.xml
+++ b/php-phpday25.xml
@@ -37,6 +37,9 @@ https://wiki.php.net/rfc/new_without_parentheses
https://wiki.php.net/rfc/closures_in_const_expr
<slide>slides/internals/php85-closures-in-constant-expressions.xml</slide>
+https://wiki.php.net/rfc/pipe-operator-v3
+<slide>slides/internals/php85-pipes.xml</slide>
+
https://wiki.php.net/rfc/fcc_in_const_expr
<slide>slides/internals/php85-fcc-in-constant-expressions.xml</slide>
@@ -76,8 +79,10 @@ https://wiki.php.net/rfc/new_rounding_modes_to_round_function
<slide>slides/internals/php84-round-modes.xml</slide>
-->
+<!--
https://wiki.php.net/rfc/bcrypt_cost_2023
<slide>slides/internals/php84-bcrypt-cost.xml</slide>
+-->
https://wiki.php.net/rfc/grapheme_str_split
<slide>slides/internals/php84-grapheme-str-split.xml</slide>
diff --git a/slides/internals/php85-closures-in-constant-expressions.xml b/slides/internals/php85-closures-in-constant-expressions.xml
index f8bd4d00..d17b8287 100644
--- a/slides/internals/php85-closures-in-constant-expressions.xml
+++ b/slides/internals/php85-closures-in-constant-expressions.xml
@@ -20,12 +20,10 @@ function slugger(
var_dump(slugger('Hello, World!')); // string(11) "hello-world"
?>]]></example>
-<div effect="fade-in">
<list>
<bullet>They must be %static%</bullet>
<bullet>They may not include variables from the surrounding scope<br/>no:
%use($foo)%, nor: short closures (%fn … =>%)</bullet>
</list>
-</div>
</slide>
diff --git a/slides/internals/php85-pipes.xml b/slides/internals/php85-pipes.xml
new file mode 100644
index 00000000..f0a12821
--- /dev/null
+++ b/slides/internals/php85-pipes.xml
@@ -0,0 +1,27 @@
+<slide>
+<title>PHP 8.5: Pipe Operator</title>
+
+<example><![CDATA[<?php
+function slugger(string $input)
+{
+ return $input
+ |> \strtolower(...)
+ |> fn($x) => \preg_replace('/[^a-z]/', '-', $x)
+ |> fn($x) => \trim($value, '-')
+ |> fn($x) => \preg_replace('/-+/', '-', $x);
+}
+
+
+
+
+
+
+
+var_dump(slugger('Hello, World!')); // string(11) "hello-world"
+?>]]></example>
+
+<list>
+ <bullet>Still under consideration (but currently passing)</bullet>
+</list>
+
+</slide>