A Quick Guide to PHP in 2019

Introduction

What Is PHP?

PHP (Hypertext Preprocessor) is a versatile scripting language that gives users the ability to create a plethora of applications, especially server-side web development. You can use PHP for the following:

  • Create dynamic websites, web applications as well as your own API service
  • Interact with third party APIs
  • Process data (XML, HTML DOM and more)
  • Manipulate databases (PHP supports MySQL/MariaDB, SQLite, MongoDB, and more!)

Having said that, a large advantage to PHP is that it's a loosely typed language. You won't have to worry about declaring specific types. Rather than typing (int) $variable = 0;, for example, you can simply use $variable = 0; and PHP will automatically detect the variable type.

Other Advantages

In addition to being open source, PHP is also:

  • Easy to install
  • Multi-platform (runs on any operating system on which it is installed)
  • Fast (compilation of code is done real-time, as opposed to pre-compiled languages such as C#)
  • Open-source

What Will This Guide Cover?

This guide will cover:

  • PHP conventions
  • Creating a "Hello, world!" page and a simple calculator
  • How to interact and query a 3rd party API to get the current weather

Extra Documentation

If you ever get lost and need to find a method/function, visit PHP's documentation page.

Creating Your First Programs

Conventions

Before we create our first application, a few important things to note are as follows:

  1. PHP code always starts with <?php and typically terminates with ?>.
  2. PHP sends errors to a file called error_log. For example, if you try to call a nonexistent function, you will see PHP Fatal error: followed by Uncaught Error: Call to undefined function function_that_does_not_exist().
  3. PHP, like most languages, is case-sensitive. In other words, $var != $Var.
  4. While PHP variables don't specifically require types, you may need to cast (or change the type). This can be done by casting the type before a variable. Example: (int) $variable = ....

"Hello, world!"

This is the most basic part of the tutorial. The "Hello, world!" portion aims to teach you how to create a proper file in order to have it parsed properly. Before we start, though, please make sure that you have a working web-server with PHP running. This tutorial assumes you are using Apache configured with php-cli. Vultr offers several PHP stacks (LAMP, LEMP) as one-click applications. When you are ready, proceed to the following steps.

Create a file called "test.php" in your web-server's root directory:

nano test.php

Populate it with the following code:

<?php 
    $testString = "Hello, world!";
    print("Hello, world!<br/>"); // <br/> = HTML line break
    echo $testString;
?>

Save and exit.

When you visit test.php in your browser, you will see:

Hello, world!  
Hello, world!

Note: Architecturally, print & echo are different. Functionality-wise, they are about the same.

A Simple Calculator

This program will take two inputs and add them together. This section aims to teach you about how PHP handles data types.

Create a new file called calc.php:

nano calc.php

Populate it with the following code:

<!DOCTYPE html>
<html>
    <head>
        <title>Calculator</title>
    </head>
    <body>
        <form method="POST" action="calc.php">
            <input type="number" name="firstNumber" placeholder="First #"/>
            <p>+</p>
            <input type="number" name="secondNumber" placeholder="Second #"/>
            <p>=</p>
            <input type="submit" value="Submit"/>
            <p>
                <?php
                    // The line below checks if there is a value present in both boxes.
                    if (isset($_POST['firstNumber']) && isset($_POST['secondNumber'])) { 
                        // The line below returns the sum of the two values
                        echo $_POST['firstNumber'] + $_POST['secondNumber'];
                    }
                ?>
            </p>
        </form>
    </body>
</html>

Save and exit.

When you visit calc.php, you will see a form that looks like the following:

A Quick Guide to PHP in 2019

Enter any number you'd like; the answer should be the sum of the first and second numbers.

Note: This is a very basic code block without any error handling. If both numbers are not filled out, for example, the blank input will be considered 0, but a "non-numeric value" warning will be thrown.

A Simple Weather Checker

Now that we have most of the basics (simple mathematics & variables) done, we can create an application that pulls the weather for any city.

NOTE: We'll be using Dark Sky's weather API to get our data. Please obtain a free API key before proceeding to the first step.

Retrieve your API key once you've confirmed your email by clicking on "Console." You will see the following:

A Quick Guide to PHP in 2019

Proceed to the next step once you've copied the key.

Create a new file called temperature.php:

nano temperature.php

Populate it with the following code:

<?php
    // Retreive weather data for a certain set of coordinates (43.766040, -79.366232 = Toronto, Canada); change "YOUR_API_KEY" to your own API key
    $json = file_get_contents("https://api.darksky.net/forecast/YOUR_API_KEY/43.766040,-79.366232?exclude=daily,hourly,minutely,flags,alerts");

    // Tell PHP to parse the data and convert the JSON into an indexed array
    $data = json_decode($json, true);

    // Get our temperature from the array
    $temperatureInF = $data["currently"]["temperature"];

    // Convert it into Celsius using the formula: (Fahrenheit - 32) * 5 / 9
    $rawTemperatureInC = ($temperatureInF - 32) * (5 / 9);
    $temperatureInC = round($rawTemperatureInC, 2);

    // Return temperature in both Celsius and Fahrenheit
    echo "<h1>";
    echo "It is currently: " . $temperatureInF . "F or " . $temperatureInC . "C.";
    echo "</h1>"
?>

Once you save the file and visit the page, you will see something along the lines of the following:

It is currently: 57.78F or 14.32C.

This value is dynamic and updates every minute. Assuming everything worked out properly, you will have created a live weather page for your area. We've successfully combined basic PHP arithmetic along with storing values in our variables, as well as using a few basic functions.

Conclusion

Congratulations -- you've completed some basic programs! With these basics down, and some dedication, you should be able to create anything. If you're ever stuck or need to find a specific function, please refer to PHP's documentation. It will prove invaluable when you continue to discover new functions and techniques.

While this quick-start guide doesn't cover anything too in-depth, it should give you a general idea of how the language works. Practice makes perfect though -- you'll become more comfortable as you write more and more code in PHP.

Hagyj kommentárt

Egyéni Windows ISO létrehozása frissítésekkel az NTLite használatával

Egyéni Windows ISO létrehozása frissítésekkel az NTLite használatával

Ez az oktatóanyag végigvezeti Önt a Vultrs rendszerekkel kompatibilis Windows ISO létrehozásának folyamatán. Itt megtanulhatja az <>Windows ISO<> előállításának lépéseit az NTLite segítségével.

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.