Un buon sviluppatore web, oltre alla conoscenza di JavaScript, HTML e CSS, deve aprire i propri orizzonti. Specialmente lato back-end, ci sono tanti linguaggi di programmazione utili per ricoprire questo ruolo. Uno di questi è il linguaggio PHP. Gli sviluppatori PHP sono molto richiesti nel mondo del lavoro per la loro importanza nella gestione del back end di un sito web. Ad oggi è uno dei linguaggi più utilizzati degli ultimi anni!
Nato nel 1994, il linguaggio PHP nasce con l’idea di rendere le pagine web più dinamiche. PHP sta per, Hypertext Preprocessor ed è il linguaggio di scripting, open source, lato server più utilizzato al mondo. PHP è un linguaggio interpretato, ovvero attraverso un interprete traduce il codice del linguaggio in modo tale che sia comprensibile al computer. Viene impiegato nell’utilizzo di tantissimi framework per il web development.
Perché imparare PHP?
Offre tante opportunità lavorative. Le aziende sono in costante ricerca di sviluppatori PHP che sappiano anche utilizzare framework che lo adottano. Nel tuo bagaglio da web developer PHP è uno scoglio molto importante per poterti lanciare nel mondo del lavoro. E, come già detto, è ancora oggi uno dei linguaggi più diffusi tra i programmatori.
Ti starai chiedendo come imparare PHP, la risposta è semplice. Facendo tanta pratica. Come in qualsiasi linguaggio di programmazione. Affiancare la pratica ad una guida PHP o delle lezioni, è sempre un good habit per approfondire quei concetti che potrebbero risultare più complessi.
In questo articolo vedremo 5 esercizi PHP per migliorare la proprio conoscenza del linguaggio e approcciarsi ad esso. Gli esercizi sono di difficoltà graduale e cercano di ricoprire le caratteristiche del linguaggio di scripting.
Troverai le soluzioni alla fine dell’articolo. Non sbirciare!
- Scrivi una funzione PHP che verifichi se la stringa passata come argomento sia un palindromo.
- Scrivi uno script PHP per creare un nuovo array di lunghezza nota usando i numeri dispari da un dato array di interi positivi
- Scrivi una classe PHP chiamata Calculator che accetterà due valori come argomento. Aggiungili, sottraili, moltiplicali e dividili tra loro usando delle funzioni.
- Scrivi un programma PHP per spostare tutti gli zero in un array, alla fine di esso.
- Scrivi un programma PHP per ordinare una lista di elementi utilizzando l’algoritmo Bubble sort. Il Bubble sort è un semplice algoritmo di ordinamento di liste di dati. L’insieme di dati viene scansionato, ogni coppia di elementi adiacenti viene comparata ed i due elementi vengono invertiti di posizione se sono nell’ordine sbagliato. L’algoritmo continua nuovamente a ri-eseguire questi passaggi su tutta la lista fino a quando tutti gli elementi non sono ordinati.
In questi esercizi si cerca di ricoprire i fondamentali della programmazione ad oggetti e le caratteristiche del linguaggio, come l’utilizzo di PHP echo, che negli altri linguaggi di programmazione è assente.
Soluzioni:
- Questo esercizio ha una complessità molto bassa. Si tratta di sfruttare il costrutto in PHP if-else e l’utile metodo strrev() che ritorna la stringa al contrario. Molti metodi built-in di PHP semplificano la vita nello svolgere i compiti.
<?php
function check_palindrome($string)
{
if ($string == strrev($string))
return 1;
else
return 0;
}
echo check_palindrome('otto')."\n";
?>
- Servirti di una funzione PHP in questo esercizio ti semplificherà la vita. Si tratta di manipolare un array in modo tale da prendere confidenza con la sintassi del linguaggio e capire meglio come scrivere codice, partendo da qualcosa di relativamente semplice. Ricordati sempre di usare il ciclo for per scorrere gli array… Posa la tua attenzione sulla key-word implode che unisce gli elementi di un array con una stringa.
<?php
function test($nums, $count)
{
$evens = [$count];
$j = 0;
for ($i = 0; $j < $count; $i++)
{
if ($nums[$i] % 2 != 0)
{
$evens[$j] = $nums[$i];
$j++;
}
}
return $evens;
}
$result = test([1,2,3,5,7,9,10], 3);
echo "Il nuovo array: ".implode(",", $result);
- Prendere dimestichezza con le classi PHP è utile per conoscere il linguaggio, ma anche per capire meglio il paradigma di programmazione ad oggetti. In questo esercizio conoscerai la parola chiave $this che consente di accedere alle proprietà e ai metodi dell’oggetto all’interno di una classe. $this non esiste all’esterno di una classe.
<?php
class Calculator {
private $_fval, $_sval;
public function __construct( $fval, $sval ) {
$this->_fval = $fval;
$this->_sval = $sval;
}
public function add() {
return $this->_fval + $this->_sval;
}
public function subtract() {
return $this->_fval - $this->_sval;
}
public function multiply() {
return $this->_fval * $this->_sval;
}
public function divide() {
return $this->_fval / $this->_sval;
}
}
$mycalc = new Calculator(12, 6);
echo $mycalc-> add()."\n"; // Risultato 18
echo $mycalc-> multiply()."\n"; // Risultato 72
echo $mycalc-> subtract()."\n"; // Risultato 6
echo $mycalc-> divide()."\n"; // Risultato 2
?>
- Questo esercizio è molto simpatico. Aiuta molto a capire come funzionano gli array tramite PHP utilizzando sia il for-loop che il while-loop. Ricordati che il conteggio degli elementi in un array parte da 0!
<?php
function move_zero($arr)
{
$count = 0;
$n = sizeof($arr);
for ($i = 0; $i < $n; $i++)
{
if ($arr[$i] != 0)
{
$arr[$count++] = $arr[$i];
}
}
// Lascia che tutti gli elementi diversi da zero siano spostati in avanti
while ($count < $n)
{
$arr[$count++] = 0;
}
return $arr;
}
$num_list1 = array(0,2,3,4,6,7,10);
$num_list2 = array(10,0,11,12,0,14,17);
print_r(move_zero($num_list1));
print_r(move_zero($num_list2));
?>
- Il Bubble sort è uno degli algoritmo di ordinamento più semplici (a livello di complessità) nel mondo dell’informatica. Utilizza ciò che hai imparato dai precedenti esercizi per completarlo. Occhio alle liste PHP (list) sono come gli array, ma non rappresentano una funzione built-in. È utilizzato per assegnare una lista di variabili in una operazione.
<?php
function bubble_Sort($my_array )
{
do
{
$swapped = false;
for( $i = 0, $c = count( $my_array ) - 1; $i < $c; $i++ )
{
if( $my_array[$i] > $my_array[$i + 1] )
{
list( $my_array[$i + 1], $my_array[$i] ) =
array( $my_array[$i], $my_array[$i + 1] );
$swapped = true;
}
}
}
while( $swapped );
return $my_array;
}
$test_array = array(3, 0, 2, 5, -1, 4, 1);
echo "Array originale:\n";
echo implode(', ',$test_array );
echo "\nArray ordinato\n:";
echo implode(', ',bubble_Sort($test_array)). PHP_EOL;
?>
Fare esercizi di coding online aiuta molto ad immergersi all’interno di un linguaggio. Imparare PHP è fondamentale e passa anche attraverso questi semplici esercizi di pratica. Sei alle prime armi con PHP ? Non ti preoccupare, puoi imparare le basi di questo linguaggio consultando la nostra guida di php in italiano online.