cd ..

Complete Guide to PHP Development

Master PHP with this comprehensive guide covering syntax, variables, functions, object-oriented programming, database integration, and best practices.

Thu 03 Apr, 2025 • PHP

What is PHP?

PHP (Hypertext Preprocessor) is a widely-used server-side scripting language designed for web development but also used as a general-purpose programming language.

Basic Syntax

A PHP script starts with <?php and ends with ?>:

<?php
    echo "Hello, World!";
?>

Variables and Data Types

PHP variables are declared with the $ sign:

<?php
    $name = "John";
    $age = 25;
    $price = 19.99;
    $isAvailable = true;
?>

Data Types in PHP

PHP supports several data types:

  1. String - A sequence of characters
$text = "Hello, PHP!";
 
echo $text;
  1. Integer - Whole numbers
$num = 100;
 
echo $num;
  1. Float (Double) - Decimal numbers
$price = 99.99;
 
echo $price;
  1. Boolean - True or False values
$is_valid = true;
 
echo $is_valid;
  1. Array - Stores multiple values
$fruits = ["Apple", "Banana", "Cherry"];
 
echo $fruits[0];
  1. Object - Stores custom objects
class Car {
    public $brand;
}
 
$myCar = new Car();
$myCar->brand = "Toyota";
 
echo $myCar->brand;
  1. NULL - Represents a variable with no value
$x = NULL;
  1. Resource - Special type for handling file or database connections
$file = fopen("test.txt", "r");

Control Structures

Conditional Statements

if ($age >= 18) {
    echo "Adult";
} else {
    echo "Minor";
}

Loops

While Loop

$i = 1;
 
while ($i <= 5) {
    echo $i . " ";
    $i++;
}

For Loop

for ($i = 1; $i <= 5; $i++) {
    echo $i . " ";
}

Functions

Functions in PHP are declared using the function keyword:

function greet($name) {
    return "Hello, " . $name;
}
 
echo greet("Alice");

Arrays

Indexed Array

$fruits = ["Apple", "Banana", "Cherry"];
 
echo $fruits[0];

Associative Array

$person = ["name" => "Alice", "age" => 30];
 
echo $person["name"];

Multidimensional Array

$employees = [
    ["name" => "John", "age" => 28],
    ["name" => "Jane", "age" => 32]
];
 
echo $employees[0]["name"];

Object-Oriented Programming (OOP)

Class and Object

class Car {
    public $brand;
 
    public function setBrand($brand) {
        $this->brand = $brand;
    }
 
    public function getBrand() {
        return $this->brand;
    }
}
 
$myCar = new Car();
 
$myCar->setBrand("Toyota");
 
echo $myCar->getBrand();

Inheritance

class ElectricCar extends Car {
    public $batteryCapacity;
 
    public function setBattery($capacity) {
        $this->batteryCapacity = $capacity;
    }
 
    public function getBattery() {
        return $this->batteryCapacity;
    }
}
 
$tesla = new ElectricCar();
 
$tesla->setBrand("Tesla");
$tesla->setBattery("100 kWh");
 
echo $tesla->getBrand() . " - " . $tesla->getBattery();

PHP and MySQL

Connecting to a Database

$conn = new mysqli("localhost", "username", "password", "database");
 
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";

Fetching Data

$result = $conn->query("SELECT * FROM users");
 
while ($row = $result->fetch_assoc()) {
    echo $row["name"] . "<br>";
}

Error Handling

Using try-catch

try {
    $conn = new PDO("mysql:host=localhost;dbname=myDB", "username", "password");
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
 
    echo "Connected successfully";
} catch (PDOException $e) {
    echo "Connection failed: " . $e->getMessage();
}

Best Practices

  • Use Prepared Statements to prevent SQL injection.
  • Follow the MVC pattern for structured code.
  • Enable error reporting during development using error_reporting(E_ALL);.
  • Secure sensitive data with hashing (password_hash()).
  • Use require and include for reusable components.
  • Follow PSR coding standards for clean, maintainable code.

This guide provides a complete overview of PHP fundamentals, covering syntax, control structures, OOP, and database interactions.