WordPressで使用するプログラム言語、PHP - WIジャパン

WordPressで使用するプログラム言語、PHP

WordPressのテーマはphpで開発されています。言い換えると、WordPressは多くの機能をPHPで実装していることを示しています。

PHPの概要

https://www.php.net

PHPは「Hypertext Preprocessor(ハイパーテキストプリプロセッサ)」の略で、主にWebアプリケーション開発で使用されるサーバーサイドスクリプト言語です。HTMLに直接埋め込む形で動的なWebページを生成できるのが特徴です。1995年にRasmus Lerdorfによって開発され、現在でも広く使われ続けています。

PHPの主な特徴

PHPの主な特徴を紹介します。

サーバーサイドで動作する

PHPはリクエストを受けてサーバー側で実行され、HTMLとして結果を返すため、ブラウザではPHPコードが見えません。

データベースとの連携が得意

MySQL、PostgreSQL、SQLiteなどのRDBと簡単に接続でき、データの読み書き・検索処理を行うWebシステム開発に適しています。

HTMLへの埋め込みが容易

PHPコードは<?php ... ?>タグで囲むことで、HTMLファイルの中に直接書けるため、テンプレートエンジンを使わなくても簡単にWebページを生成可能です。

オープンソースで無料

PHPは無料で利用でき、幅広いOS(Linux、Windows、macOSなど)で動作するため、開発環境を整えるコストも低く抑えられます。

幅広いフレームワークの存在

Laravel、Symfony、CodeIgniterなどのモダンなフレームワークがあり、大規模なWebアプリケーション開発にも対応可能です。

PHPが活用されている主な分野

PHPが使われている分野を紹介します。

CMS(コンテンツ管理システム)

WordPressをはじめ、DrupalやJoomlaなど、多くのCMSはPHPで構築されています。

ECサイトやWebサービス

ショッピングカート機能、ログイン機能、フォーム送信など、動的な処理が求められるWebサービスで広く利用されています。

REST APIの構築

LaravelやSlimなどの軽量フレームワークを用いることで、Web APIの構築にも適しています。

PHPのメリットとデメリット

PHPのメリットとデメリットです。

メリット

  • 学習コストが低く初心者でも扱いやすい
  • 豊富なライブラリ・情報が揃っている
  • ホスティングサービスで標準的にサポートされている

デメリット

  • 書き方に自由度が高く、コード品質にばらつきが出やすい
  • 最新のモダン言語に比べると冗長な書き方が必要な場合もある

PHPの実行環境

PHPを動作させるには、以下のような環境構築が一般的です。

  • Apache + PHP + MySQL(LAMP構成)
  • XAMPP、MAMPなどのパッケージ
  • Dockerコンテナを使った環境構築
  • クラウドホスティング(ConoHa、Xserverなど)

PHPの現在と将来性

一時期に比べて新規採用の機会は減っているものの、WordPressなどのCMSの普及やレガシーシステムの保守需要により、PHPの需要は依然として存在しています。また、Laravelを中心にモダンPHPとしての進化も続いており、効率的なWeb開発が可能な言語として見直されています。

PHPの書き方を学ぶ

まずはPHPの構造を理解しましょう。

PHPコードの基本構文

PHPは、<?php ... ?>のタグで囲まれた部分がPHPのコードとして認識されます。以下が最も基本的なPHPの書き方です。

phpコピーする編集する<?php
echo "こんにちは、PHP!";
?>

このコードは、Webページに「こんにちは、PHP!」と出力します。

セミコロンで終わる

PHPの各命令文(ステートメント)は必ず;(セミコロン)で終了します。これがないと構文エラーになります。

phpコピーする編集する<?php
echo "これは正しい";
echo "これも正しい";
?>

コメントの書き方

一行コメント

phpコピーする編集する// これは一行コメント

複数行コメント

phpコピーする編集する/*
これは複数行の
コメントです
*/

変数の宣言と使い方

PHPでは変数の名前の先頭に$を付けます。型の宣言は不要です。

phpコピーする編集する<?php
$name = "太郎";
$age = 25;
echo $name . "さんは" . $age . "歳です。";
?>

文字列の結合にはピリオド(.)を使います。

データ型とその使い方

PHPは動的型付け言語で、以下のような型がよく使われます。

  • 文字列(string)
  • 数値(整数、浮動小数点)
  • 真偽値(boolean)
  • 配列(array)
  • オブジェクト(object)

例:

phpコピーする編集する<?php
$number = 100;         // 整数
$price = 99.5;         // 小数
$isActive = true;      // 真偽値
$colors = ["赤", "青", "緑"]; // 配列
?>

条件分岐(if文)

phpコピーする編集する<?php
$age = 20;
if ($age >= 18) {
    echo "成人です。";
} else {
    echo "未成年です。";
}
?>

繰り返し処理(for / foreach)

phpコピーする編集する<?php
// for文の例
for ($i = 1; $i <= 5; $i++) {
    echo $i . "<br>";
}

// foreachの例
$colors = ["赤", "青", "緑"];
foreach ($colors as $color) {
    echo $color . "<br>";
}
?>

関数の定義と呼び出し

phpコピーする編集する<?php
function greet($name) {
    return "こんにちは、" . $name . "さん!";
}

echo greet("花子");
?>

関数はfunctionキーワードで定義し、引数と戻り値を使って処理を分けることができます。

フォームとの連携(POST/GET)

phpコピーする編集する<!-- HTML -->
<form method="post">
  <input type="text" name="username">
  <input type="submit" value="送信">
</form>

<?php
// PHP
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $username = $_POST["username"];
    echo "ようこそ、" . htmlspecialchars($username) . "さん!";
}
?>

フォーム送信時にユーザーが入力した値をPHPで受け取り処理することが可能です。

PHPのファイル構成例(簡易)

pgsqlコピーする編集するproject/
├── index.php
├── header.php
├── footer.php
└── functions.php

includerequireで他のPHPファイルを読み込んで、コードを整理できます。

phpコピーする編集する<?php include "header.php"; ?>
<?php include "functions.php"; ?>
<!-- 本文 -->
<?php include "footer.php"; ?>

WordPress内で使われているPHP

WordPressのテーマで使われているPHPファイルの詳細な構造等はWordPressの公式サイトで解説されています。

WordPressのプラグイン開発

WordPressのプラグインの開発についてもWordPressの公式サイトで記載があります。