mirror of
https://github.com/restoreddev/phpapprentice.git
synced 2025-10-23 19:06:05 +02:00
96 lines
4.9 KiB
HTML
96 lines
4.9 KiB
HTML
<!DOCTYPE html>
|
|
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
|
|
<title>Functions</title>
|
|
<meta name="description" content="">
|
|
|
|
<link rel="stylesheet" href="/css/site.css">
|
|
<link rel="icon" href="/favicon-32.png">
|
|
<script src="/js/site.js"></script>
|
|
</head>
|
|
|
|
<body>
|
|
|
|
<div class="menu">
|
|
<button class="menu-button" title="Open Menu">
|
|
<div class="icon"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M0 3h20v2H0V3zm0 6h20v2H0V9zm0 6h20v2H0v-2z"/></svg></div>
|
|
Menu
|
|
</button>
|
|
</div>
|
|
|
|
<div class="container center">
|
|
<h1>Functions</h1>
|
|
<h3 class="subtitle">Reusable code</h3>
|
|
<div class="grid-code"><div class="doc"></div><div class="code"><pre><code class="language-php"><?php
|
|
|
|
</code></pre></div><div class="doc">A function allows you to store code under a name and then execute that code later.</div><div class="code"><pre><code class="language-php">
|
|
</code></pre></div><div class="doc">A function always starts with the function keyword followed by the name with parentheses and then opening and closing curly braces around the code.</div><div class="code"><pre><code class="language-php">function hello_world() {
|
|
echo "hello world\n";
|
|
}
|
|
|
|
</code></pre></div><div class="doc">To call the function, use the function name with parentheses.</div><div class="code"><pre><code class="language-php">hello_world();
|
|
|
|
</code></pre></div><div class="doc">You can set up values to be passed into a function. To do so, write variables in between the function parentheses. Each one should be separated by a comma.</div><div class="code"><pre><code class="language-php">function greet($firstname, $lastname) {
|
|
echo "hello $firstname $lastname\n";
|
|
}
|
|
|
|
</code></pre></div><div class="doc">Then, you can pass in values when calling a function. In the greet function, 'John' is assigned to $firstname and 'Smith' is assigned to $lastname.</div><div class="code"><pre><code class="language-php">greet('John', 'Smith');
|
|
|
|
</code></pre></div><div class="doc">You can also return a value from a function. You can only return a single value from a function.</div><div class="code"><pre><code class="language-php">function capitalize($value) {
|
|
return strtoupper($value);
|
|
}
|
|
|
|
</code></pre></div><div class="doc">When calling a function, it will output the return value which you can load into a variable.</div><div class="code"><pre><code class="language-php">$animal = capitalize('dog');
|
|
echo "$animal\n";
|
|
|
|
</code></pre></div><div class="doc">You can also create nameless functions called closures. Closures can be stored in variables or passed into other functions.</div><div class="code"><pre><code class="language-php">$sum = function ($a, $b) {
|
|
return $a + $b;
|
|
};
|
|
|
|
</code></pre></div><div class="doc">You can execute a closure by putting parentheses after the variable.</div><div class="code"><pre><code class="language-php">echo $sum(1, 2) . "\n";
|
|
</code></pre></div></div>
|
|
<div class="clearfix"></div>
|
|
<div class="navigate-links">
|
|
<a href="/arrays.html" title="Previous">
|
|
<div class="icon"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M10 20a10 10 0 1 1 0-20 10 10 0 0 1 0 20zm8-10a8 8 0 1 0-16 0 8 8 0 0 0 16 0zM7.46 9.3L11 5.75l1.41 1.41L9.6 10l2.82 2.83L11 14.24 6.76 10l.7-.7z"/></svg></div>
|
|
Previous
|
|
</a>
|
|
<a href="/classes.html" title="Next">
|
|
Next
|
|
<div class="icon"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M10 0a10 10 0 1 1 0 20 10 10 0 0 1 0-20zM2 10a8 8 0 1 0 16 0 8 8 0 0 0-16 0zm10.54.7L9 14.25l-1.41-1.41L10.4 10 7.6 7.17 9 5.76 13.24 10l-.7.7z"/></svg></div>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="modal closed">
|
|
<div class="modal-content">
|
|
<button class="modal-button right" title="Close">
|
|
<div class="icon"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M2.93 17.07A10 10 0 1 1 17.07 2.93 10 10 0 0 1 2.93 17.07zm1.41-1.41A8 8 0 1 0 15.66 4.34 8 8 0 0 0 4.34 15.66zm9.9-8.49L11.41 10l2.83 2.83-1.41 1.41L10 11.41l-2.83 2.83-1.41-1.41L8.59 10 5.76 7.17l1.41-1.41L10 8.59l2.83-2.83 1.41 1.41z"/></svg></div>
|
|
</button>
|
|
<div class="table-of-contents">
|
|
<h4>Table of Contents</h4>
|
|
<a href="/index.html">Preface</a>
|
|
<ol>
|
|
<li><a href="/basics.html">Basics</a></li>
|
|
<li><a href="/variables.html">Variables</a></li>
|
|
<li><a href="/arithmetic.html">Arithmetic</a></li>
|
|
<li><a href="/comparisons.html">Comparisons</a></li>
|
|
<li><a href="/boolean-logic.html">Boolean Logic</a></li>
|
|
<li><a href="/conditionals.html">Conditionals</a></li>
|
|
<li><a href="/loops.html">Loops</a></li>
|
|
<li><a href="/arrays.html">Arrays</a></li>
|
|
<li><a href="/functions.html">Functions</a></li>
|
|
<li><a href="/classes.html">Classes</a></li>
|
|
</ol>
|
|
<a href="/credits.html">Credits</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</body>
|
|
|
|
</html>
|