コンテンツにスキップ

データ・型

はじめに

本サイトにつきまして、【IT技術の知見】はじめに - 俺の技術ノート をご認識のほど宜しくお願いいたします。


01. プリミティブデータ型

プリミティブ型

▼ プリミティブ型とは

スカラー型、複合型、その他、に分類できる。

以下のリンクを参考にせよ。


スカラー型

▼ bool

T/F データの種類 説明
FALSE $var = 何も格納されていない変数
False 文字としての False
0 数字、文字列
"" 空文字
array() 要素数が 0 個の配列
NULL NULL 値
TRUE 上記以外の値

▼ float

▼ int

▼ string


複合型

▼ array

▼ callable

▼ iterable

▼ object

<?php

class A
{
    private string $name = "Hiroki";

    public function HelloWorld(): string
    {
        return sprintf(
            "%s, %s",
            $this->name,
            "Hello World!"
            );
    }
}

$a = new A;

var_dump($a);

// object(A)#1 (1) {
//  ["name":"A":private]=>
//  string(6) "Hiroki"
//}

print_r($a);

// A Object
// (
//     [name:A:private] => Hiroki
// )


その他のデータ型

▼ date

厳密にはデータ型ではないが、便宜上、データ型とする。

タイムスタンプとは、協定世界時(UTC)を基準にした 1970 年 1 月 1 日の 0 時 0 分 0 秒からの経過秒数を表したもの。

フォーマット 実装方法 備考
日付 2019-07-07 区切り記号なし、ドット、スラッシュなども可能
時間 19:07:07 区切り記号なし、も可能
日付と時間 2019-07-07 19:07:07
タイムスタンプ (秒) 1562494027 1970 年 1 月 1 日の 0 時 0 分 0 秒から 2019-07-07 19:07:07 までの経過秒数

▼ null

▼ resource


02. データ型の判定/変換

判定関数

▼ is_scalar()

スカラー型 (bool、float、int、string) を判定する。


キャスト演算子

▼ (string)

<?php

$var = 10; // $varはinteger型。

// キャスト演算子でデータ型を変換
$var = (string) $var; // $varはstring型

▼ (int)

<?php

$var = 1;

// integer型
$var = (int) $var;

// 1

▼ (bool)

<?php

$var = 1;

// boolean型
$var = (bool) $var;

// true

▼ (float)

<?php

$var = "1.0";

// Float型
$var = (float) $var;

// 1.0

▼ (array)

<?php

// 配列型
$var = (array) $var;

▼ (object)

<?php

// Object型
$var = (object) $var;


03. list() 関数

list() 関数とは

PHP の list() 関数は、List 型とは意味合いが異なる。

配列の個々の要素を変数に格納したい場合、List 型を使用しなければ、冗長ではあるが、以下のように実装する必要がある。

<?php

$array = array("あ", "い", "う");
$a = $array[0];
$i = $array[1];
$u = $array[2];

echo $a.$i.$u; // あいう

しかし、以下のように、list() 関数を使用することによって、複数の変数への格納を1行で実装できる。

<?php

list($a, $i, $u) = array("あ", "い", "う");

echo $a.$i.$u; // あいう