カテゴリー: BackEnd

PHP入門 〜文字列と数値の操作〜

はじめに

普段、私はRailsでサーバサイドの開発をしているのですが、業務でPHPの開発をすることになりそうなので勉強をはじめました。これから何回かに渡ってPHPの入門記事を書いていこうと思います。

第1回目である今回はPHPの基礎と文字列・数値の操作について記事にします。

基本ルール

PHPの基本的なルールを説明します。非常にシンプルなのですぐ覚えられると思います。

開始と終了のタグ

PHPのコードは <?php と ?> で囲まれた範囲の中に記述します。この範囲の外に書かれたコードはPHPエンジンに無視されます。

ホワイトスペース

他の多くの言語と同じようにPHPでもホワイトスペースは無視されます。PHPの特徴として print などの言語のキーワードと値との間にスペースが無くても動作します。

大文字と小文字の区別

PHPでは言語のキーワードと関数名は大文字と小文字を区別しません。

<?php
// 以下の全ては同じ
print "sample";
PRINT "sample";
pRiNT "sample";
?>

コメント

PHPでのコメントは // や # を使った1行コメントと、 /* と */ で囲む複数行コメントがあります。なお、1行コメントでは # ではなく // を用いる方が良いようです。

<?php
// 1行コメント
# これも1行コメント
print "hoge"; // これもOK
/*
以下の行は実行されない
print "hogehoge";
print "fuga";
*/?>

変数の定義

PHPでは変数名の先頭に $ をつけて定義します。PHPの変数は ++ と — でインクリメント、デクリメントできる他、 += と .= で数値を加算して代入、文字列を結合して代入が行えます。

文字列の操作

PHPでの文字列の定義とよく使う操作について説明します。

文字列の定義

PHPの文字列ではsingle quoteで囲む場合とdouble quoteで囲む二種類があります。また、文字列中に特殊文字を含める場合は、他の多くの言語と同じようにエスケープ文字(/)を用います。

single quoteで囲った文字列とdouble quoteで囲った文字列の違いは扱える特殊文字の種類と変数の扱いです。double quoteで囲った場合は \n などの特殊文字を扱うことができ、さらに、変数が展開されます。

<?php
// single quote
print 'hoge hoge';
// hoge hoge

// double quote
$str = 'Taro Yamada';
print "Hello! $str.\nNice to meet you!";
// Hello! Taro Yamada.
// Nice to meet you!
?>

PHPでは上記の他にヒアドキュメントでも文字列を定義できます。

<?php
print <<<HTML
<html>
<head><title>sample</title></head>
<body>
<p>Hello, World!</p>
</body>
</html>
HTML;
?>

無駄なスペースを削除する

文字列の先頭と末尾のホワイトスペースの削除は trim() 関数で行えます。

<?php
print trim('  hoge hoge ');
// hoge hoge
?>

長さを調べる

文字列の長さは strlen() 関数で調べられます。

<?php
$str = 'hoge hoge';
if (strlen($str) != 4) {
    print $str;
}
// hoge hoge
?>

比較する

文字列同士の比較は == で行います。また、 strcasecmp() 関数を使うことで、大文字と小文字を区別しない比較も行えます

<?php
$str = 'Hoge';
if ($str == 'hoge') {
    print $str;
}
//
if (strcasecmp($str, 'hoge')) {
    print $str;
}
// Hoge
?>

フォーマット

printf() 関数を使用することで、様々なフォーマットで文字列を出力できます。

<?php
// 小数の表示
$price = 51; $tax = 0.08;
printf('Tax is %.2f.', $price * $tax);
// Tax is 4.08.

// パディング
$year = 2018; $month = 1; $day = 1;
printf('%d/%02d/$02d', $year, $moth, $day);
// 2018/01/01

// 符号の表示
$plus = 10; $minus = -5;
printf('%+d ~ %+d', $minus, $plus);
// -5 ~ 10
?>

大文字、小文字の変更

文字列を全て小文字にするには strtolower() 関数を使います。逆に、文字列を全て大文字にするには strtoupper() 関数を使います。

<?php
$str = 'Hello, World!';
print strtolower($str);
// hello, world!
print strtoupper($str);
// HELLO, WORLD!
?>

また、 ucwords() 関数を使うと文字列内のそれぞれの単語の1文字目を大文字に変換します。

<?php
$str = 'taro yamada';
print ucwords($str);
// Taro Yamada
?>

部分的な抽出

文字列の部分的な抽出は substr() を使います。

<?php
$str = 'abcdefghijklmn';
// 3文字目から5文字を表示
print substr($str, 2, 5);
// cdefg
// 後ろから7文字目から3文字を表示
print substr($str, -7, 3);
// ghi
// 後ろから5文字目から最後まで表示
print substr($str, -5);
// jklmn
?>

置換

文字列の置換は str_replace() 関数を使います。

<?php
$str = '090 1234 1234';
print str_replace('12', '98', $str);
// 090 9834 9834
?>

結合

PHPでの文字列の結合は + ではなく . で行います。

<?php
$first_name = 'Taro';
$last_name = 'Yamada';
print 'Hello! ' . $first_name . ' ' . $last_name . '.';
// Hello! Taro Yamada.
?>

数値の操作

他の言語と同じように、PHPでは整数と浮動小数点数を扱えます。PHPでの計算方法を説明します。

計算

PHPでは四則演算と剰余計算ができます。

<?php
print 1 + 1;
// 2
printf('%.2f', 10 - 3.55);
// 6.45
print 30 / 6;
// 5
print 4 * 6;
// 24
print 70 % 6;
// 4
?>

さいごに

PHP入門の1回目として、基本ルールと文字列、数値の操作について紹介しました。

おすすめ書籍

      

Hiroki Ono

シェア
執筆者:
Hiroki Ono
タグ: php

最近の投稿

フロントエンドで動画デコレーション&レンダリング

はじめに 今回は、以下のように…

3週間 前

Goのクエリビルダー goqu を使ってみる

はじめに 最近携わっているとあ…

1か月 前

【Xcode15】プライバシーマニフェスト対応に備えて

はじめに こんにちは、suzu…

2か月 前

FSMを使った状態管理をGoで実装する

はじめに 一般的なアプリケーシ…

3か月 前