SlideShare a Scribd company logo
1 of 84
Download to read offline
Starting Out With PHP
Mark Niebergall

https://joind.in/talk/fa612
Starting Out With PHP
• PHP is a useless language to learn

• PHP is hated by all developers

• PHP is insecure, slow, and not modern

• PHP is bad
Starting Out With PHP
• Lets developers make mistakes

- $password = md5(‘password123’);

- eval($userInput);
Starting Out With PHP
• Lets developers make mistakes

- echo $$variable . $$$variable;

- if (‘true’ == false) {…}
Starting Out With PHP
• Lets developers make mistakes

- $sql = “DELETE FROM users WHERE id =
{$_GET[‘id’]}”;

- “INSERT INTO some_data VALUES (NULL,
‘{$_POST[‘name’]}’);
Starting Out With PHP
• Lets developers make mistakes

- file_get_contents($randomUrl);

- $GLOBALS[‘everything’] = $everything;
Starting Out With PHP
• Lets developers make mistakes

- $oneCase + $two_case + $ThreeCase_More

- if (empty($allTheThings)) {…}
Starting Out With PHP
• Lets developers make mistakes

- if ($a < $b) {

if ($test == true) {

if ($number < 100) {

if (strpos($string, ‘abc’) != 0) {

if ($nestMore == ‘Yes’) {

echo ‘Nesting if statements is great!’;

}

}

}

}

}
Starting Out With PHP
• Lets developers make mistakes

- Works on my box!
Starting Out With PHP
• PHP runs over 83% of the web

• PHP has an active community

• PHP is secure, fast, and constantly being updated

• PHP is good
About Mark Niebergall
• PHP since 2005

• Masters degree in MIS

• Senior Software Engineer

• Drug screening project

• UPHPU President

• CSSLP, SSCP Certified and SME

• Drones, fishing, skiing, father of 5 boys
Starting Out With PHP
• What is PHP

• Basic Syntax

• Language Features

• PHP Ecosystem
What is PHP
What is PHP
<?php
What is PHP
<?php



echo ‘Hello world!’;

echo “Hello $name”;
What is PHP
<?php



class HelloWorld

{

public function sayHello($name)

{

echo ‘Hello ‘ . $name;

}

}



$helloWorld = new HelloWorld;

$helloWorld->sayHello(‘OpenWest Attendees’);

What is PHP
• Personal Home Page

• Rasmus Lerdorf in 1994

• PHP: Hypertext Preprocessor
What is PHP
• Programming language designed for the Internet

• Server-side scripting language

• General-purpose programming language
What is PHP
• Facebook

• Slack

• Tumblr

• Wikipedia

• News sites

• Blogs
What is PHP
• Open source

- Free to use

- Anyone can contribute

- Source is public
What is PHP
• Written in C

• Compiled at run-time
What is PHP
What is PHP
What is PHP
• Runs with web servers

- Apache

- Nginx
What is PHP
• Interacts with databases

- PostgreSQL

- MySQL

- MSSQL

- Mongo

- Many more
What is PHP
• APIs

• Server

• Mail

• Files
Starting Out With PHP
• What is PHP

• Basic Syntax

• Language Features

• PHP Ecosystem
Basic Syntax
<?php



$variable = ‘something’;

$isSomething = true;

$someInput = $_GET[‘get_key’];
Basic Syntax
<?php



$variable = ‘something’;

$isSomething = true;

$someInput = $_GET[‘get_key’];



if ($isSomething) {

echo $variable;

}
Basic Syntax
<?php



$variable = ‘something’;

$isSomething = true;

$someInput = $_GET[‘get_key’];



if ($isSomething === true || $someInput == ‘Yes’) {

echo $variable;

}
Basic Syntax
<?php



$string = ‘Abc 123’;

$integer = 123;

$float = 123.456;

$bool = true;

$null = null;

$array = [123, 456];

$resource = fopen(‘SomeFile.txt’, ‘r’);

$object = new SomeClass;
Basic Syntax
<?php



$oldArray = array(‘alligator’, ‘bear’, ‘camel’, ‘deer’);



$data = [‘apple’, ‘banana’, ‘carrot’];



$withKeys = [‘test’ => 123, ‘other’ => 456];



foreach ($data as $food) {

echo ‘Eat a ‘ . $food . PHP_EOL;

}
Basic Syntax
<?php



$whatAmI = ‘Drone’;



switch ($whatAmI) {

case ‘Airplane’:

echo ‘Fly far away’;

break;



case ‘Drone’:

case ‘Helicopter’:

echo ‘Fly close by’;

break;

}
Basic Syntax
<?php



$number = 0;



while ($number < 7) {

$number += 1;

}



return $number;
Basic Syntax
<?php



for ($i = 0; $i < 100; $i++) {

…

}
Basic Syntax
<?php



$variable = ‘something’;

$isSomething = true;

$someInput = $_GET[‘get_key’];



function doSomething($variable, $isSomething)

{

if ($isSomething) {

return $variable;

}

return ‘Not something: ‘ . $something;

}
Basic Syntax
<?php



class Cat{}
Basic Syntax
<?php



class Cat {

protected $name;



public function __construct($name) {

$this->name = $name;

}



public function pet() {

return ‘purr’;

}

}
Basic Syntax
<?php



class Cat

{

// Anything can use public

public function pet() {…}



// Cat class and anything inheriting can use protected

protected function speak() {…}



/* only Cat class can use private */

private function _ignoreHuman() {…}

}
Basic Syntax
<?php

abstract class Pet {

protected $name;

abstract public function feed(Food $food);

}



class Cat extend Pet {

public function feed(Food $food) {

return $this->stare($food);

}

protected function stare($thing) {}

}
Basic Syntax
<?php



namespace AnimalPet;



use AnimalHuman;



class Cat

{

public function pet() {…}

protected function speak() {…}

private function _ignoreHuman(Human $human) {…}

}
Basic Syntax
<?php



include(‘Cat.php’);

include_once(‘Dog.php’);



require(‘/../Pet.php’);

require_once(‘/../../Animal.php’);
Basic Syntax
<?php



class AutloadClass

{

public function loadMethod($className)

{

require_once(__DIR__ . ‘/../src/‘ . $className);

}

}



spl_autoload_register([AutoloadClass::class, ‘loadMethod’]);
Basic Syntax
<?php

class Db

{

protected $connection;

public function connect($db, $host, $port, $user, $pwd)

{

$this->connection = new PDO(

‘mysql:dbname=‘ . $db . ‘;host=‘ . $host .

‘;port=‘ . $port’,

$user,

$pwd

);

}

}
Basic Syntax
<?php



// use frameworks for database



$query = $this->getDb()->select()

->from([‘tn’ => ‘table_name’], [‘id’, ‘name’])

->join([‘ot’ => ‘other_table’], ‘ot.id = tn.other_id’,
[‘other_thing’])

->where(‘tn.some_date > ?’, $date)

->where(‘ot.other_number = ?’, $number);



$rows = $this->getDb()->fetchAll($query);
Basic Syntax
<?php



$hashed = password_hash($password,
PASSWORD_DEFAULT);



$isValid = password_verify($userEntered, $hashed);
Starting Out With PHP
• What is PHP

• Basic Syntax

• Language Features

• PHP Ecosystem
Language Features
• Functional

• Object-oriented
Language Features
• Data types

• Type juggling
Language Features
• Method parameter type hinting

• Method return type
Language Features
• Class

• Abstract

• Interface

• Trait
Language Features
• Class

- Constants

- Properties

- Methods

- Magic methods
Language Features
• Class

- class Cat extends Pet implements HousePet {

use MouseCatcherTrait;

const FAMILY = ‘Feline’;

protected $name;

public function __construct($dependencies) {…}

public static function independentAction() {…}

protected function eatFood(Food $food) : Food {…}

private function _controlHuman(Human $human) {…}

}
Language Features
• Abstract

- Class can extend one abstract at a time

- Can have parent, grandparent, etc.

- Mixed functions filled in and others not

- abstract class Pet {

abstract protected function eatFood(Food $food) :
Food {};

}
Language Features
• Interfaces

- Contract

- Class can implement many interfaces

- interface Port {

public function connect(Connection $connection);

}
Language Features
• Trait

- Common characteristics

- trait SomeCharacteristic {

public function doSomething() {…}

}

- class Thing {

use SomeCharacteristic;

}
Language Features
• Exceptions

- try {

…

throw new Exception(‘Error message’);

…

throw new CustomException(‘Failed’);

} catch (Exception | CustomException $e) {

echo $e->getMessage();

}
Language Features
• Magic methods

- Called automatically

- __construct when instantiated

- __set, __get

- __destruct, __call, __callStatic, __isset, __unset,
__sleep, __wakup, __toString, __invoke, __set_state,
__clone, __debugInfo
Language Features
• Namespaces

- namespace AnimalMammalFeline;

use AnimalFish;



class Cat

{

public function eat(Fish $fish) {…}

}

…

new AnimalMammalFelineCat;
Language Features
• Libsodium

- First programming language with modern security
library built-in

- Hash

- Encrypt

- Keys

- Random
PHP Ecosystem
• Frameworks

• Tools

• Community

• Career
PHP Ecosystem
• CMS Frameworks

- Wordpress

- Drupal

- Joomla
PHP Ecosystem
• Frameworks

- larvel

- Symfony

- CakePHP

- Zend

- Slim
PHP Ecosystem
• Frameworks

- Framework Interop Group (PHP-FIG)

‣ Coding standard recommendations

‣ Common interfaces
PHP Ecosystem
• Tools

- composer package manager

‣ packagist repositories

- PECL extension manager
PHP Ecosystem
PHP Ecosystem
• Tools

- PhpStorm

- Zend Studio

- Many other IDEs to choose from

- Any text editor
PHP Ecosystem
• Tools

- PHPUnit

- behat

- phpspec

- Faker
PHP Ecosystem
• Tools

- Xdebug

‣ Step-into debugging

‣ Stacktrace

‣ Performance
PHP Ecosystem
• Tools

- Guzzle

- Apigility
PHP Ecosystem
• Tools

- git

- Mercurial

- Others
PHP Ecosystem
• Community

- User groups

‣ https://www.meetup.com/Utah-PHP-User-Group/

- Conferences

- Magazine
PHP Ecosystem
• Community

- Slack channels

‣ utos.slack.com

‣ phpcommunity.slack.com

‣ phpchat.slack.com

‣ phpug.slack.com
PHP Ecosystem
• Community

- Open source

- Diversity

- Elephpants
PHP Ecosystem
• Community

- Welcoming

- Open to other technologies, languages
PHP Ecosystem
• Career

- Experience

- Education
PHP Ecosystem
• Career

- Lots of jobs

‣ Recruiters

‣ Job boards

‣ Contracts

‣ Who you know
PHP Ecosystem
• Career

- Good pay

‣ $40k-$60k starting

‣ $60k-$80k mid

‣ $80k+ advanced and lead
PHP Ecosystem
• Career

- Local

- Remote
Starting Out With PHP
• What is PHP

• Basic Syntax

• Language Features

• PHP Ecosystem
Questions?
• https://joind.in/talk/fa612
References
• php.net

More Related Content

What's hot

Object-Oriented Programming with PHP (part 1)
Object-Oriented Programming with PHP (part 1)Object-Oriented Programming with PHP (part 1)
Object-Oriented Programming with PHP (part 1)Bozhidar Boshnakov
 
Bioinformatics p1-perl-introduction v2013
Bioinformatics p1-perl-introduction v2013Bioinformatics p1-perl-introduction v2013
Bioinformatics p1-perl-introduction v2013Prof. Wim Van Criekinge
 
Class 3 - PHP Functions
Class 3 - PHP FunctionsClass 3 - PHP Functions
Class 3 - PHP FunctionsAhmed Swilam
 
Class 2 - Introduction to PHP
Class 2 - Introduction to PHPClass 2 - Introduction to PHP
Class 2 - Introduction to PHPAhmed Swilam
 
Bioinformatics p5-bioperl v2013-wim_vancriekinge
Bioinformatics p5-bioperl v2013-wim_vancriekingeBioinformatics p5-bioperl v2013-wim_vancriekinge
Bioinformatics p5-bioperl v2013-wim_vancriekingeProf. Wim Van Criekinge
 
Cli the other sapi pbc11
Cli the other sapi pbc11Cli the other sapi pbc11
Cli the other sapi pbc11Combell NV
 
(Parameterized) Roles
(Parameterized) Roles(Parameterized) Roles
(Parameterized) Rolessartak
 
Diving into HHVM Extensions (PHPNW Conference 2015)
Diving into HHVM Extensions (PHPNW Conference 2015)Diving into HHVM Extensions (PHPNW Conference 2015)
Diving into HHVM Extensions (PHPNW Conference 2015)James Titcumb
 

What's hot (20)

Introduction in php
Introduction in phpIntroduction in php
Introduction in php
 
Php Tutorials for Beginners
Php Tutorials for BeginnersPhp Tutorials for Beginners
Php Tutorials for Beginners
 
05php
05php05php
05php
 
Introduction in php part 2
Introduction in php part 2Introduction in php part 2
Introduction in php part 2
 
Object-Oriented Programming with PHP (part 1)
Object-Oriented Programming with PHP (part 1)Object-Oriented Programming with PHP (part 1)
Object-Oriented Programming with PHP (part 1)
 
Bioinformatics p1-perl-introduction v2013
Bioinformatics p1-perl-introduction v2013Bioinformatics p1-perl-introduction v2013
Bioinformatics p1-perl-introduction v2013
 
Perl Basics for Pentesters Part 1
Perl Basics for Pentesters Part 1Perl Basics for Pentesters Part 1
Perl Basics for Pentesters Part 1
 
Bioinformatica p6-bioperl
Bioinformatica p6-bioperlBioinformatica p6-bioperl
Bioinformatica p6-bioperl
 
Class 3 - PHP Functions
Class 3 - PHP FunctionsClass 3 - PHP Functions
Class 3 - PHP Functions
 
Class 2 - Introduction to PHP
Class 2 - Introduction to PHPClass 2 - Introduction to PHP
Class 2 - Introduction to PHP
 
rtwerewr
rtwerewrrtwerewr
rtwerewr
 
Bioinformatics p5-bioperl v2013-wim_vancriekinge
Bioinformatics p5-bioperl v2013-wim_vancriekingeBioinformatics p5-bioperl v2013-wim_vancriekinge
Bioinformatics p5-bioperl v2013-wim_vancriekinge
 
Introduction to php php++
Introduction to php php++Introduction to php php++
Introduction to php php++
 
Cli the other sapi pbc11
Cli the other sapi pbc11Cli the other sapi pbc11
Cli the other sapi pbc11
 
Introduction to Perl and BioPerl
Introduction to Perl and BioPerlIntroduction to Perl and BioPerl
Introduction to Perl and BioPerl
 
Introduction to php
Introduction to phpIntroduction to php
Introduction to php
 
(Parameterized) Roles
(Parameterized) Roles(Parameterized) Roles
(Parameterized) Roles
 
Diving into HHVM Extensions (PHPNW Conference 2015)
Diving into HHVM Extensions (PHPNW Conference 2015)Diving into HHVM Extensions (PHPNW Conference 2015)
Diving into HHVM Extensions (PHPNW Conference 2015)
 
Intermediate PHP
Intermediate PHPIntermediate PHP
Intermediate PHP
 
PHP - Introduction to PHP Functions
PHP -  Introduction to PHP FunctionsPHP -  Introduction to PHP Functions
PHP - Introduction to PHP Functions
 

Similar to Starting Out With PHP

PHP Basics and Demo HackU
PHP Basics and Demo HackUPHP Basics and Demo HackU
PHP Basics and Demo HackUAnshu Prateek
 
PHP: The easiest language to learn.
PHP: The easiest language to learn.PHP: The easiest language to learn.
PHP: The easiest language to learn.Binny V A
 
HackU PHP and Node.js
HackU PHP and Node.jsHackU PHP and Node.js
HackU PHP and Node.jssouridatta
 
php (Hypertext Preprocessor)
php (Hypertext Preprocessor)php (Hypertext Preprocessor)
php (Hypertext Preprocessor)Chandan Das
 
Supercharging WordPress Development in 2018
Supercharging WordPress Development in 2018Supercharging WordPress Development in 2018
Supercharging WordPress Development in 2018Adam Tomat
 
関西PHP勉強会 php5.4つまみぐい
関西PHP勉強会 php5.4つまみぐい関西PHP勉強会 php5.4つまみぐい
関西PHP勉強会 php5.4つまみぐいHisateru Tanaka
 
PHP from soup to nuts Course Deck
PHP from soup to nuts Course DeckPHP from soup to nuts Course Deck
PHP from soup to nuts Course DeckrICh morrow
 
Giới thiệu PHP 7
Giới thiệu PHP 7Giới thiệu PHP 7
Giới thiệu PHP 7ZendVN
 
PSR-7 - Middleware - Zend Expressive
PSR-7 - Middleware - Zend ExpressivePSR-7 - Middleware - Zend Expressive
PSR-7 - Middleware - Zend ExpressiveMilad Arabi
 
php fundamental
php fundamentalphp fundamental
php fundamentalzalatarunk
 
Php introduction with history of php
Php introduction with history of phpPhp introduction with history of php
Php introduction with history of phppooja bhandari
 

Similar to Starting Out With PHP (20)

PHP Basics and Demo HackU
PHP Basics and Demo HackUPHP Basics and Demo HackU
PHP Basics and Demo HackU
 
PHP: The easiest language to learn.
PHP: The easiest language to learn.PHP: The easiest language to learn.
PHP: The easiest language to learn.
 
Intro to PHP
Intro to PHPIntro to PHP
Intro to PHP
 
PHP for hacks
PHP for hacksPHP for hacks
PHP for hacks
 
Php hacku
Php hackuPhp hacku
Php hacku
 
HackU PHP and Node.js
HackU PHP and Node.jsHackU PHP and Node.js
HackU PHP and Node.js
 
PHP
PHPPHP
PHP
 
php (Hypertext Preprocessor)
php (Hypertext Preprocessor)php (Hypertext Preprocessor)
php (Hypertext Preprocessor)
 
Perl basics for Pentesters
Perl basics for PentestersPerl basics for Pentesters
Perl basics for Pentesters
 
Modern php
Modern phpModern php
Modern php
 
Supercharging WordPress Development in 2018
Supercharging WordPress Development in 2018Supercharging WordPress Development in 2018
Supercharging WordPress Development in 2018
 
関西PHP勉強会 php5.4つまみぐい
関西PHP勉強会 php5.4つまみぐい関西PHP勉強会 php5.4つまみぐい
関西PHP勉強会 php5.4つまみぐい
 
PHP from soup to nuts Course Deck
PHP from soup to nuts Course DeckPHP from soup to nuts Course Deck
PHP from soup to nuts Course Deck
 
Giới thiệu PHP 7
Giới thiệu PHP 7Giới thiệu PHP 7
Giới thiệu PHP 7
 
PSR-7 - Middleware - Zend Expressive
PSR-7 - Middleware - Zend ExpressivePSR-7 - Middleware - Zend Expressive
PSR-7 - Middleware - Zend Expressive
 
php fundamental
php fundamentalphp fundamental
php fundamental
 
Php introduction with history of php
Php introduction with history of phpPhp introduction with history of php
Php introduction with history of php
 
php
phpphp
php
 
Perl Moderno
Perl ModernoPerl Moderno
Perl Moderno
 
Phphacku iitd
Phphacku iitdPhphacku iitd
Phphacku iitd
 

More from Mark Niebergall

Filesystem Management with Flysystem - php[tek] 2023
Filesystem Management with Flysystem - php[tek] 2023Filesystem Management with Flysystem - php[tek] 2023
Filesystem Management with Flysystem - php[tek] 2023Mark Niebergall
 
Leveling Up With Unit Testing - php[tek] 2023
Leveling Up With Unit Testing - php[tek] 2023Leveling Up With Unit Testing - php[tek] 2023
Leveling Up With Unit Testing - php[tek] 2023Mark Niebergall
 
Filesystem Management with Flysystem at PHP UK 2023
Filesystem Management with Flysystem at PHP UK 2023Filesystem Management with Flysystem at PHP UK 2023
Filesystem Management with Flysystem at PHP UK 2023Mark Niebergall
 
Leveling Up With Unit Testing - LonghornPHP 2022
Leveling Up With Unit Testing - LonghornPHP 2022Leveling Up With Unit Testing - LonghornPHP 2022
Leveling Up With Unit Testing - LonghornPHP 2022Mark Niebergall
 
Unit Testing from Setup to Deployment
Unit Testing from Setup to DeploymentUnit Testing from Setup to Deployment
Unit Testing from Setup to DeploymentMark Niebergall
 
BDD API Tests with Gherkin and Behat
BDD API Tests with Gherkin and BehatBDD API Tests with Gherkin and Behat
BDD API Tests with Gherkin and BehatMark Niebergall
 
BDD API Tests with Gherkin and Behat
BDD API Tests with Gherkin and BehatBDD API Tests with Gherkin and Behat
BDD API Tests with Gherkin and BehatMark Niebergall
 
Relational Database Design Bootcamp
Relational Database Design BootcampRelational Database Design Bootcamp
Relational Database Design BootcampMark Niebergall
 
Automatic PHP 7 Compatibility Checking Using php7cc (and PHPCompatibility)
Automatic PHP 7 Compatibility Checking Using php7cc (and PHPCompatibility)Automatic PHP 7 Compatibility Checking Using php7cc (and PHPCompatibility)
Automatic PHP 7 Compatibility Checking Using php7cc (and PHPCompatibility)Mark Niebergall
 
Debugging PHP with Xdebug - PHPUK 2018
Debugging PHP with Xdebug - PHPUK 2018Debugging PHP with Xdebug - PHPUK 2018
Debugging PHP with Xdebug - PHPUK 2018Mark Niebergall
 
Advanced PHP Simplified - Sunshine PHP 2018
Advanced PHP Simplified - Sunshine PHP 2018Advanced PHP Simplified - Sunshine PHP 2018
Advanced PHP Simplified - Sunshine PHP 2018Mark Niebergall
 
Inheritance: Vertical or Horizontal
Inheritance: Vertical or HorizontalInheritance: Vertical or Horizontal
Inheritance: Vertical or HorizontalMark Niebergall
 
Cybersecurity State of the Union
Cybersecurity State of the UnionCybersecurity State of the Union
Cybersecurity State of the UnionMark Niebergall
 
Cryptography With PHP - ZendCon 2017 Workshop
Cryptography With PHP - ZendCon 2017 WorkshopCryptography With PHP - ZendCon 2017 Workshop
Cryptography With PHP - ZendCon 2017 WorkshopMark Niebergall
 
Defensive Coding Crash Course - ZendCon 2017
Defensive Coding Crash Course - ZendCon 2017Defensive Coding Crash Course - ZendCon 2017
Defensive Coding Crash Course - ZendCon 2017Mark Niebergall
 
Leveraging Composer in Existing Projects
Leveraging Composer in Existing ProjectsLeveraging Composer in Existing Projects
Leveraging Composer in Existing ProjectsMark Niebergall
 
Defensive Coding Crash Course
Defensive Coding Crash CourseDefensive Coding Crash Course
Defensive Coding Crash CourseMark Niebergall
 

More from Mark Niebergall (20)

Filesystem Management with Flysystem - php[tek] 2023
Filesystem Management with Flysystem - php[tek] 2023Filesystem Management with Flysystem - php[tek] 2023
Filesystem Management with Flysystem - php[tek] 2023
 
Leveling Up With Unit Testing - php[tek] 2023
Leveling Up With Unit Testing - php[tek] 2023Leveling Up With Unit Testing - php[tek] 2023
Leveling Up With Unit Testing - php[tek] 2023
 
Filesystem Management with Flysystem at PHP UK 2023
Filesystem Management with Flysystem at PHP UK 2023Filesystem Management with Flysystem at PHP UK 2023
Filesystem Management with Flysystem at PHP UK 2023
 
Leveling Up With Unit Testing - LonghornPHP 2022
Leveling Up With Unit Testing - LonghornPHP 2022Leveling Up With Unit Testing - LonghornPHP 2022
Leveling Up With Unit Testing - LonghornPHP 2022
 
Developing SOLID Code
Developing SOLID CodeDeveloping SOLID Code
Developing SOLID Code
 
Unit Testing from Setup to Deployment
Unit Testing from Setup to DeploymentUnit Testing from Setup to Deployment
Unit Testing from Setup to Deployment
 
Stacking Up Middleware
Stacking Up MiddlewareStacking Up Middleware
Stacking Up Middleware
 
BDD API Tests with Gherkin and Behat
BDD API Tests with Gherkin and BehatBDD API Tests with Gherkin and Behat
BDD API Tests with Gherkin and Behat
 
BDD API Tests with Gherkin and Behat
BDD API Tests with Gherkin and BehatBDD API Tests with Gherkin and Behat
BDD API Tests with Gherkin and Behat
 
Hacking with PHP
Hacking with PHPHacking with PHP
Hacking with PHP
 
Relational Database Design Bootcamp
Relational Database Design BootcampRelational Database Design Bootcamp
Relational Database Design Bootcamp
 
Automatic PHP 7 Compatibility Checking Using php7cc (and PHPCompatibility)
Automatic PHP 7 Compatibility Checking Using php7cc (and PHPCompatibility)Automatic PHP 7 Compatibility Checking Using php7cc (and PHPCompatibility)
Automatic PHP 7 Compatibility Checking Using php7cc (and PHPCompatibility)
 
Debugging PHP with Xdebug - PHPUK 2018
Debugging PHP with Xdebug - PHPUK 2018Debugging PHP with Xdebug - PHPUK 2018
Debugging PHP with Xdebug - PHPUK 2018
 
Advanced PHP Simplified - Sunshine PHP 2018
Advanced PHP Simplified - Sunshine PHP 2018Advanced PHP Simplified - Sunshine PHP 2018
Advanced PHP Simplified - Sunshine PHP 2018
 
Inheritance: Vertical or Horizontal
Inheritance: Vertical or HorizontalInheritance: Vertical or Horizontal
Inheritance: Vertical or Horizontal
 
Cybersecurity State of the Union
Cybersecurity State of the UnionCybersecurity State of the Union
Cybersecurity State of the Union
 
Cryptography With PHP - ZendCon 2017 Workshop
Cryptography With PHP - ZendCon 2017 WorkshopCryptography With PHP - ZendCon 2017 Workshop
Cryptography With PHP - ZendCon 2017 Workshop
 
Defensive Coding Crash Course - ZendCon 2017
Defensive Coding Crash Course - ZendCon 2017Defensive Coding Crash Course - ZendCon 2017
Defensive Coding Crash Course - ZendCon 2017
 
Leveraging Composer in Existing Projects
Leveraging Composer in Existing ProjectsLeveraging Composer in Existing Projects
Leveraging Composer in Existing Projects
 
Defensive Coding Crash Course
Defensive Coding Crash CourseDefensive Coding Crash Course
Defensive Coding Crash Course
 

Recently uploaded

Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 

Recently uploaded (20)

Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 

Starting Out With PHP