Extra herhaling
Opgave 1
<?php $maanden = array ('Januari', 'Februari', 'Maart', 'April', 'Mei', 'Juni', 'Juli', 'Augustus',
'September', 'Oktober', 'November', 'December'); ?>
...
...
Maak deze code af zodat de output er zo uit ziet en gebruik darbij een loop.
Maand 1 is Januari.
Maand 2 is Februari.
Maand 3 is Maart.
Maand 4 is April.
Maand 5 is Mei.
Maand 6 is Juni.
Maand 7 is Juli.
Maand 8 is Augustus.
Maand 9 is September.
Maand 10 is Oktober.
Maand 11 is November.
Maand 12 is December.
Opgave 2
Maak een drop-down menu met de jaartallen 1940 tot en met het huidige jaar. Het huidige jaar kan worden opgevraagd met de PHP-functie date('Y')
. We gaan nu niet in op de werking hiervan, maar hiermee kan worden voorkomen dat het formulier ieder jaar moet worden aangepast. Vul date('Y')
dus in plaats van 2019 in.
Gebruik een loop.
Pas het drop-down menu aan, zodat de jaartallen in aflopende volgorde worden weergegeven en dat de geboortejaren voor mensen jonger dan 18 worden weggelaten.
Opgave 3
<?php
$eten = array(
'fruit' => array('geel' => array('banaan', 'citroen'), 'oranje' => array('sinaasappel', 'mandarijn')),
'groente ' => array('asperge', 'broccoli', 'courgette')
);
...
...
Maak het stukje code af en druk daarmee alle groenten onder elkaar af, zoals:
- asperge
- broccoli
- courgette
Gebruik de HTML <UL> om een unnumbered list te krijgen zoals hierboven aangegeven.
Opgave 4
Maak het stukje code van opgave 3 af en druk daarbij alle fruit van een bepaalde kleur af. Maak daarvoor een functie die als parameter het array en de kleur mee krijgt, dus
drukGeelFruitAf($eten,$kleur);
Opgave 5
Maak een functie die twee parameters mee krijgt, $string en $nummer. De output van de functie is de return value is het karakter van de string op de positie n, bijvoorbeeld:
myFunct("Hallo",2) -> "a"
myFunct("Hallo",4) -> "l
myFunct("Hallo",9) -> ""
Opgave 6
Maak nu een functie die letter n uit een string haalt. Bijvoorbeeld:
myFunct("Hallo",2) -> "Hllo"
myFunct("Hallo",4) -> "Halo
myFunct("Hallo",9) -> "Hallo"
Opgave 7
Maak de odnerstaande code af. De functie stuurt de regel tekst in $string naar een logfile. De naam van de logfile wordt gedefineerd in de constante LOGFILE. Gebruikt deze voor de logfile naam.
<?
define("LOGFILE", "logfile.txt");
myLog("Oops er ging iets mis in de code op regel 5");
function myLog($string) {
.....
}
Elke keer als je de functie aanroept wordt er eennieuwe regel aan de logfile toegevoegd. Deze regel begint met de datum en tijd en dan volgt de regel tekst. De log file zou er zo kunnen uitzien:
...
17-09-2019 21:35 Oops er ging iets mis in de code
17-09-2019 21:36 Oops er ging weer iets is in de code op regel 12
17-09-2019 21:36 User heeft 12 keer proberen aan te loggen met user id admin, inloggen geblokeerd
...
Opgave 8
Maak een teller die bijhoud hoevaak een pagina wordt bezocht. Elke keer als een pagina wordt bezogd dat roep jet de functie teller() aan. De functie teller leest een getal uit een file. De file name is gedfineerd in een CONSTANTE (net als bij opgave 7). In de file staat gewoon een nummer, bijvoorbeeld 12. Dit nummer wordt ingelezen, met één opgehoogd en terug geschreven naar de file. In de file staat nu dus het nummer 13.
Opgave 9
Opgave 10
Opgave 11
Opgave 12
Opgave 13
Opgave 14
Opgave 15
Opgave 16a
Wat doet de php functie scandir("c:")?
Voer de functie uit en maak een lijst van alle directories in je C-Drive, de output ziet er bijvoorbeeld zo uit:
Config.Msi
DRIVERS
Documents and Settings
Intel
PerfLogs
Program Files
Program Files (x86)
ProgramData
Recovery
Reflect_Install.log
....
Opgave 16b
De lijst die je bij opgave 6 afdrukt bevat directories en files. Met de fuctie is_dir() kun je bepalen of een entry een directory (map) is af dat het bijvoorbeeld een file is. Pas de code aan en Druk het woord Directory af voor elke directory.
Zet de code in een functie. De functie krijgt als parameter de directory die moet worden getoond. In het voorbeeld is dat "C:".
Opgave 16c
Als je een directory anders dan . of .. tegenkomt dat voer je opniew de functie die je hebt gecreeerd uit. Dus de functie roept zichzelf aan. Je noemt dit recursief. Als het goed is worden nu alle directories en files afgedrukt. Filter de output nu zodanig dat je alleen alle files ziet. Directories worden dus niet afgerdrukt.
Opgave 16d
Je hebt nu een functie die alle files op jouw harde schijf afdrukt. Maak nu een zoekfunctie die zoekt naar een bepalade filenaam.
Opgave 17
Opgave 18
Opgave 19
Opgave 20
Opgave 21
Opgave 22
Opgave 23
Opgave 24
Opgave 25