[DOC-CVS] [doc-en] master: Tutorial: Improved "What's Next" section (#5491)

[email protected] (AllenJB via GitHub) Sat, 9 May 2026 08:07:48 +0000
Newsgroups php.doc.cvs
Message-ID <[email protected]>
Author: AllenJB (AllenJB)
Committer: GitHub (web-flow)
Pusher: jordikroon
Date: 2026-05-09T10:07:45+02:00

Commit: https://github.com/php/doc-en/commit/1340d3595bde8489ea1385868ffd75471a56999b
Raw diff: https://github.com/php/doc-en/commit/1340d3595bde8489ea1385868ffd75471a56999b.diff

Tutorial: Improved "What's Next" section (#5491)

* Tutorial: Improved What's Next section

Co-authored-by: Louis-Arnaud <[email protected]>

Changed paths:
  M  chapters/tutorial.xml


Diff:

diff --git a/chapters/tutorial.xml b/chapters/tutorial.xml
index bafbdb5b4ddf..735965b6e7a9 100644
--- a/chapters/tutorial.xml
+++ b/chapters/tutorial.xml
@@ -305,15 +305,15 @@ You are using Firefox.
 <![CDATA[
 <?php
 if (str_contains($_SERVER['HTTP_USER_AGENT'], 'Firefox')) {
-?>
-<h3>str_contains() returned true</h3>
-<p>You are using Firefox</p>
-<?php
+    ?>
+    <h3>str_contains() returned true</h3>
+    <p>You are using Firefox</p>
+    <?php
 } else {
-?>
-<h3>str_contains() returned false</h3>
-<p>You are not using Firefox</p>
-<?php
+    ?>
+    <h3>str_contains() returned false</h3>
+    <p>You are not using Firefox</p>
+    <?php
 }
 ?>
 ]]>
@@ -419,16 +419,83 @@ Hi Joe. You are 22 years old.
 
   <section xml:id="tutorial.whatsnext">
    <info><title>What's next?</title></info>
+   <simpara>
+    With your new knowledge you should be able to understand most of the manual.
+   </simpara>
    <para>
-    With your new knowledge you should be able to understand most of
-    the manual and also the various example scripts available in the
-    example archives.
+    In particular you may want to explore the following features:
+    <simplelist>
+     <member>Reading and writing files with the <link linkend="book.filesystem">filesystem functions</link></member>
+     <member><link linkend="features.file-upload">Handling file uploads</link></member>
+     <member>Fetching remote pages and files with <link linkend="book.curl">Curl</link></member>
+     <member>
+      Storing and analyzing data in a database with <link linkend="book.pdo">PDO</link>
+      (<link linkend="ref.pdo-sqlite">SQLite</link> can be used without running a database server)
+     </member>
+     <member>Persisting data across requests with <link linkend="book.session">Sessions</link></member>
+    </simplelist>
    </para>
+   <simpara>
+    There's a trove of libraries and <link xlink:href="&url.packagist;/search/?tags=framework">frameworks</link>
+    for every occasion on the <link xlink:href="&url.packagist;">Packagist repository</link>, all installable via
+    the <link linkend="install.composer.intro">Composer package manager</link>.
+   </simpara>
+   <simpara>
+    For community help and advice, check out the <link xlink:href="&url.php.support;">Help page</link>.
+   </simpara>
+   <simpara>
+    For a variety of podcasts, presentations and other videos, check out the
+    <link xlink:href="&url.phpctv;">community PeerTube</link>.
+   </simpara>
+   <simpara>
+    Other community resources that will help you include "awesome lists" (curated directories of links) and "developer
+    roadmaps" (lists of related topics).
+   </simpara>
    <para>
-    To view various slide presentations that show more of what PHP can do,
-    see the PHP Conference Material Site:
-    <link xlink:href="&url.php.talks;">&url.php.talks;</link>
+    When you're stuck with no idea where to start, try breaking down your project or problem into smaller parts,
+    allowing you to more easily see what you already know how to do and what you need to learn. The list can be as deep
+    / detailed as you need. For example, building a blog might be broken down into the following parts:
+    <itemizedlist>
+     <listitem>
+      <simpara>Listing and viewing pages</simpara>
+      <itemizedlist>
+       <listitem>
+        <simpara>Reading records (pages) from a database</simpara>
+       </listitem>
+      </itemizedlist>
+     </listitem>
+     <listitem>
+      <simpara>Creating pages</simpara>
+      <itemizedlist>
+       <listitem>
+        <simpara>Handle form submission</simpara>
+       </listitem>
+       <listitem>
+        <simpara>Writing records (pages) to a database</simpara>
+       </listitem>
+      </itemizedlist>
+     </listitem>
+     <listitem>
+      <simpara>Admin login</simpara>
+      <itemizedlist>
+       <listitem>
+        <simpara>Reading records (users) from a database</simpara>
+       </listitem>
+       <listitem>
+        <simpara>Handling passwords</simpara>
+       </listitem>
+       <listitem>
+        <simpara>Persisting data (user login) across requests / pages (sessions)</simpara>
+       </listitem>
+      </itemizedlist>
+     </listitem>
+    </itemizedlist>
    </para>
+   <simpara>
+    If there's nothing particular you want to build, you can try searching for coding exercises such as katas,
+    challenges and "code golf". Even when not specifically aimed at PHP, most should be completable and will likely
+    challenge your knowledge and thinking.
+   </simpara>
   </section>
  </chapter>