-
クライアントほかのコンピューターに対して何らかの依頼(要求)を行い、その結果を受け取るコンピューターのこと
-
サーバーほかのコンピューターに対して情報やサービスを提供するコンピューターのこと
-
データーベースサーバー大量のデータを管理するサーバー
-
メールサーバー電子メールを受け渡しするサーバー
-
FTPサーバーファイルを転送するためのサーバー
-
Webサーバー(HTTPサーバー)クライアントからの要求を受けて、その処理結果を応答する窓口
-
HTTP(HyperText Transfer Protocol)クライアントからの要求に対して、サーバーが応答するという約束事
-
プロトコルコンピューター同士がデータをやり取りするためのルール
-
静的なページクライアントからの要求で、サーバー側でなんの加工もせずに返されるファイル
-
動的なページクライアントから送られた情報を利用して、サーバー側で加工して返されれファイル
-
クライアントサイド技術クライアント側にスクリプトと必要なデータをダウンロードし、クライアント上で実行する仕組み
データを保存する手段がない -
サーバサイド技術サーバー側であらかじめ決められた処理を行い、その結果をクライアントに返す仕組み
-
SPA(Single Page Application)単一のページで構成されるWebアプリのこと
-
ブラウザーサーバにアクセスするためのクライアントソフトウェア
-
コードエディターコードを編集するためのソフトウェア
-
PHPPHPスクリプトを実行するための環境
-
文字コード文字に割り当てられたコード
-
文字エンコーディング実際の文字と文字コードの対応関係のこと
-
エンコードサーバー側で、文字列を文字コードに変換する
-
デコードクライアント側で、文字コードを文字列に変換する
-
文字化けが起こる原因は?データを渡す側と受け取る側とで想定している文字コードが異なることで起こる
-
改行コード行を折り返すための特殊な文字
-
ソースコード人間が入力したコード
-
コンパイラーソースコードをコンピュータ言語に一括翻訳してから実行する
-
インプリンターソースコードを実行時にコンピュータ言語に翻訳する
-
HTML埋め込み型言語HTMLコードの中に<?php~?>というブロックを埋め込んでその中に命令文を記述する
-
HTMLコードとPHPスクリプトを区切るための記号をなんという?スクリプティングデリミター PHPタグ
<?php ~?> -
print命令指定された文字列をクライアントに出力しなさいという命令
print 'こんにちは’; -
コメント<! ~ > HTMLコメント
//,# 単一行のコメント
/* ~ */ 複数行のコメント(単一行のコメントとして使用しても良い) -
PHP本体には、開発に必要なドキュメントやサンプルなどが含まれている?PHPにドキュメントやサンプルは含まれていない。
-
PHPが動作可能なWebサーバーはApache HTTP Serverに限定される?NginxなどのWebサーバーでも動作する。
-
httpd.confApache標準の設定ファイル
-
php.iniPHP標準の設定ファイル
-
Webサーバーは、クライアントから送信されたデータを保存し、管理する役割を担う?データを保存・管理するのは、データベースサーバー
-
変数データの入れ物
-
初期化するとは変数に最初の値を代入すること
-
「=」演算子右辺の値を左辺の変数に代入
-
参照するとは名前を指定して変数の値を取り出すこと
print 変数名 -
代入とは変数に値を格納すること
-
識別子コードの中で変数や定数、関数などに付けられた名前のこと
-
可変変数変数名を変数の値によって決めることができる変数
先頭に$$とつけることで別の変数の値で動的に決定する -
定数値の変更ができないテータの入れ物
const 定数名 = 値
difine関数('定数名', 値) -
const命令定数を宣言するための命令
トップレベル以外で宣言ができない
変数・関数の戻り値を代入して宣言できない -
difine関数定数を宣言するための命令
クラス定数の宣言ができない -
_ _FILE_ _実行中のフィル名(絶対パス)
-
_ _DIR_ _実行中のファイルが存在するディレクトリ
-
_ _LINE_ _実行中の行番号
-
_ _FUNCTION_ _実行中の関数名
-
_ _CLASS_ _実行中のクラス名
-
_ _METHOD_ _実行中のメソッド名
-
_ _TRAIT_ _実行中のトレイト名
-
_ _NAMESPACE_ _現在の名前空間
-
DIRECTORY_SEPARATORディレクトリの区切り文字
-
PATH_SEPARATORパスの区切り文字
-
PHP_VERSION使用しているPHPのバージョン
-
静的型付け言語変数の型がコンパイル時に決まる言語(例: Java, C++)。
-
動的型付け言語動的型付け言語: 変数の型が実行時に決まる言語(例: JavaScript, Python)
-
スカラー型1つの変数で1つの値だけを扱うことができるもの
-
複合型1つの変数で複数の値を扱うことができるもの
-
特殊型スカラー型/複合型のいずれにも分類できないもの
-
論理リテラル(bool)true/false どちらかの状態を持つ
-
整数リテラル(int)10進数リテラル、2進数リテラル、8進数リテラル、16進数リテラルに分類できる
-
10進数リテラル正数、負数、ゼロを表現できる
-
2進数リテラル0と1で数値を表現、接頭辞には「0b」を付与する
-
8進数リテラル0~7で数値を表現、接頭辞には「0」を付与する
-
16進数リテラル0~9、a~f で10~15を表現、接頭辞には「0x」を付与する
-
浮動小数点リテラル(float)小数点を含む数値リテラルで、実数値を表現するために使用される
-
指数表現数値を基数と10の累乗で表す形式で、大きな数値や小さな数値を簡潔に表現する
<仮数部>e<符号><指数部>の形式で表される
例)1.4142e10 → 1.4142×10の10乗 → 14142000000.0
1.73205e-7 → 1.73205×10の-7乗 → 0.0000001173205 -
数値セパレーター数値リテラルの中に記述できる桁区切り文字( _ )
例)$value = 1_234_567; -
文字列リテラル(string)シングルクォート、ダブルクォートでくくられた0文字以上の文字
-
変数展開ダブルクォート文字列リテラルは、文字列に含まれる変数を解釈し、値を置き換えること
-
エスケープシーケンス特殊な意味をもち、「\文字」の形式で表現する文字のこと
-
\r復帰
-
\n改行
-
\t水平タブ
-
\v垂直タブ
-
\fフォームフィード
-
\$ドル記号
-
\\バックスラッシュ
-
\"ダブルクォート
-
\nnn3桁の8進数nnnで表された文字
-
\xnn2桁の16進数nnで表された文字
-
\u{nnnn}4桁の16進数nnnnで表されUnicode文字
-
ヒアドキュメント改行を含むような長い文字列を表すのに適した記法
<<<EOD
文字列
EOD; -
Modoc構文<<<’EOD’
文字列
EOD; -
配列(array)複数の値を持つ
$配列名 = [ 値1, 値2 … ] -
ブラケット構文配列へアクセスする
$配列名[インデックス番号] -
配列またはオブジェクトなど複合型の変数を出力する関数print_r(変数名)
-
連想配列文字列キーを使って要素を管理する配列
$連想配列名 = [キー1=値1, キー2 = 値2…] -
1次元配列インデックスが1つだけの配列
-
2次元配列(多次元配列)インデックスが2個の配列、配列の配列
-
3次元配列(多次元配列)インデックスが3個の配列、配列の配列の配列
-
配列と連想配列の入れ子配列の中に連想配列
-
オブジェクトリテラル(object)
-
コールバックリテラル(callable)
-
リソースリテラル
-
ヌル変数が値を持たないことを表す
-
暗黙的な変換その時々の状況に応じて値を適切なデータ型へ返還すること
-
キャスト明示的にデータの型を変換すること
(データ型)値 -
var_dump関数データ型も加味した変数の情報を出力する関数
-
演算子(オペレーター)とは与えられた変数やリテラルに対して、あらかじめ決められた処理を行うための記号
-
オペランドとは演算子によって処理される変数・リテラルの事
-
代数演算子算術演算子ともいう。
日常的な数学で利用する演算子 -
数値の和+
-
数値の差ー
-
数値の積*
-
数値の商/
-
数値の余剰%
-
数値の累乗**
-
インクリメント++
-
デクリメントーー
-
前置加算
$x=3;
$y=++$X;代入前に加算
$yは4 -
後置加算
$x=3;
$y=$X++;代入後に加算
$yは3 -
前置減算
$x=3;
$y=++$X;代入前に減算
$yは4 -
後置減算
$x=3;
$y=++$X;代入後に減算
$yは4 -
マジカルインクリメントプログラム内で英数字の組み合わせを扱い、文字列の一部(通常は先頭の英字部分)を維持しつつ、末尾の数値部分を自動でインクリメント(増加)する仕組み
-
floor()小数点を切り捨てるための関数
-
無限循環小数
-
任意制度数学関数bcadd(加算)
bcsub(減算)
bcmul(乗算)
bcdiv(除算)
bccomp(比較)
bcxxxxx(左オペランド,右オペランド,小数点以下の桁数)
例:bcadd(0.1, 0.7, 1);は「0.1+0.7を小数点以下1桁まで計算しなさい」という意味となる -
加算演算子で配列の結合を行う場合、注意することは左の配列に存在しないキーの要素を右の配列から取り出し、左の配列に追加されるということ
右の配列に左の配列と同じキーがあった場合、その値は無視される -
代数演算子左辺で指定した変数に対して、右辺の値を代入するための演算子
-
変数などに値を代入=
-
左辺と右辺を加算した結果を、左辺に代入+=
-
左辺から右辺を乗算した結果を、左辺に代入ー=
-
左辺と右辺を乗算した結果を、左辺に代入*=
-
左辺を右辺で累乗した結果を、左辺に代入**=
-
左辺を右辺で除算した結果を、左辺に代入/=
-
左辺を右辺で除算した余りを、左辺に代入%=
-
左辺と右辺を連結した文字列を、左辺に代入.=
-
左辺が非nullならその値を、nullなら右辺の値を代入??=
-
左辺と右辺をビット論理積した結果を、左辺に代入&=
-
左辺と右辺をビット論理和した結果を、左辺に代入|=
-
左辺と右辺をビット排他論理和した結果を、左辺に代入^=
-
左辺を右辺の値だけ左シフトした結果を左辺に代入<<=
-
左辺を右辺の値だけ右シフトした結果を左辺に代入>>=
-
複合代入演算子左辺と右辺の値を演算した結果を左辺に代入するための演算子
-
参照(リファレンス)による代入メモリ上のアドレスそのものを引き渡す代入の事
=の後方に&演算子を指定する -
分割代入配列などを分解し、配下の要素を個々の変数に代入するための構文
$data = [1, 2, 3, 4, 5];
[$a, $b, $c, $d, $e] = $data; -
一部だけ分割代入する方法$data = [1, 2, 3, 4, 5];
[ ,$a, , $b, $c] = $data;
[1 => $a, 4 => $b] =$data; ※インデックス値=>変数 -
比較演算子左辺と右辺の値を比較し、その結果をture / falseとして返す
-
左辺と右辺の値が等しい場合はtrue==
-
左辺と右辺の値が等しく、かつ、同じデータがである場合はtrue===
-
左辺と右辺の値が等しくない場合はtrue!=
-
左辺と右辺の値が等しくない場合はtrue<>
-
左辺と右辺の値が等しくない、または、同じデータ型ではない場合true!==
-
左辺が右辺より小さい場合true<
-
左辺が右辺より大きい場合true>
-
左辺が右辺以下の場合true<=
-
左辺が右辺以上の場合true>=
-
宇宙船演算子
左辺が右辺より小さい場合には-1、
左辺と右辺が等しい場合は0、
左辺が右辺より大きい場合は1<=> -
条件演算子
条件式?式1:式2
条件式がtrueの場合は式1、falseの場合式2?: -
null合体演算子
左辺がnullでなければその値、左辺がnullならば右辺の値、
左辺も右辺もnullの場合はnull?? -
論理演算子複数の条件式を論理的に結合し、その結果をtrue/falseとして返す
-
論理積
左右の式がともにtrueの場合にtrue&&
and -
論理和
左右の式いずれかがtrueの場合にtrue||
or -
排他的論理和
左右の式いずれかがtrueで、かつ、双方ともtrueではない場合にtruexor -
否定
式がtrueの場合はfalse、falseの場合はtrue! -
ビット演算子ビット演算を行うための演算子
-
ビット演算整数を2進数で表したときの各桁に対して論理計算を行う演算のこと
-
文字列演算子.
-
実行演算子`
-
エラー制御演算子@
-
演算子の優先順位異なる演算子の処理順序を決める
-
演算子の結合測同じ優先順位の演算子を処理する順序を決める
-
左結合の結合測をもつ演算子左から順に処理が行われる
算術演算子(*、/、%、+、-)
ビット演算子
論理演算子(&&、||)
条件演算子 -
右結合の結合測をもつ演算子右から順に処理が行われる
算術演算子(**)
論理演算子(!)
代入演算子 -
非結合の結合測を持つ演算子結合しない
比較演算子 -
オブジェクト指向プログラミングプログラム上で扱う対象をオブジェクトに見立て、オブジェクトを中心にコードを組み立てていく手法のこと
-
クラスライブラリ
-
変数データを保持できる、データを処理できない
-
関数データを保持できない、データを処理できる
-
クラスデータを保持できる、データを処理できる
-
インスタンス化クラスをもとにコピーを作る
$変数名=new クラス名([引数, …]) -
インスタンスインスタンス化によってできる複製
-
メンバー関数クラスに属する関数、メソッド
-
メンバー変数クラスに属する変数、プロパティ
-
アロー演算子->
-
インスタンスメソッド/インスタンスプロパティの呼び出しオブジェクト変数 -> メソッド名([引数, …)]
オブジェクト変数 -> プロパティ名[=値]
インスタンス化して呼び出す -
null安全演算子?->
オブジェクトが非nullの時だけ、そのメンバーにアクセスしたい -
静的メソッド
-
静的プロパティ
-
静的メソッド/静的プロパティの呼び出しクラス名 :: メソッド名([引数,…])
クラス名 :: プロパティ名[=値]
インスタンス化しなくても呼び出せる -
クラス定数の呼び出しクラス名 :: 定数名
-
DateTimeクラス日付/時刻の演算や整形を行う
new DateTime(日付/時刻文字列(初期値"now”),タイムゾーン) -
formatメソッド日付/時刻文字列を整形するためのメソッド
-
日付/時刻文字列日付/時刻として解釈できる文字列
YYYY/MM/DD hh:mm:ss -
DateTimeZoneクラスタイムゾーンを指定する
new DateTimeZone(タイムゾーン) -
setDate/setTimeメソッド年月日、時分秒を個別に設定する
DateTimeオブジェクト -> setDate(年、月、日)
DateTimeオブジェクト -> setTime(時、分、秒) -
Unixタイムスタンプ
-
createFromFormatメソッド日付/時刻文字列を解析する
-
add/subメソッド日付/時刻文字列を加算/減算する
-
DateIntervalクラス
-
間隔指示子
-
diffメソッド日付/時刻値の差分を取得する
-
checkdate関数日付が妥当かを判定する
-
date関数
-
time関数
-
mktime関数
-
strtotime関数
-
DirectoryIteratorクラス (ディレクトリイテレーター)指定したディレクトリは以下のファイル情報にアクセスする
インスタンス化することでディレクトリを開く
インスタンス化したオブジェクトをforeachで配下の要素を取得することでファイルにアクセスできる -
getATime()
-
getCtime()
-
getBasename()
-
getMTime()
-
getPath()
-
getPathname()
-
getSize()
-
isDir()
-
isFile()
-
isLink()
-
Composer
-
スクレイピングサイト上のページから情報を抽出するための技術
-
マッシュアップネットワーク上で提供されているサービスを組み合わせて自作のアプリに取り込む技術
-
GuzzleHTTP経由で外部の情報/サービスにアクセスするための手段を提供する
-
GuzzleHttp\Clientクラス
-
コンストラクター
-
requestメソッド
-
リクエスト情報クライアントからサーバーに送信される情報
-
URL
-
HTTP
-
プロトコル
-
デベロッパーツール
-
HTTPメソッドリクエスト情報で確認できる
クライアントからサーバーに対して発行する直接の命令
メソッド名 / コンテンツへのパス / プロトコル情報 で構成されている -
GET指定したコンテンツを取得するための命令
-
HTTPステータスレスポンス情報で確認できる
サーバーでの処理結果
プロトコル情報 / ステータスコード / ステータスメッセージ で構成されている -
200 OK処理成功を表す
-
401 UnauthorizedHTTP認証を要求している
-
302 Foundサーバーから渡された情報からリダイレクトしたこと表す
-
スーパーグローバル変数
-
$_POSTHTMLフォームから渡された情報
-
$_GETクエリ情報経由で渡された情報
-
$_FILESアップロードされたファイルに関する情報
-
$_SERVERリクエストヘッダーまたはサーバー固有の変数情報
-
$_ENVサーバー側で定義された環境変数
-
$_COOKIEクッキー経由で渡された情報
-
$_SESSIONセッション経由で渡された情報
-
$_REQUEST$_GET、 $_POST、 $_COOKIE をまとめて管理する
-
エスケープ処理
-
セッションとはユーザーとサーバー間の一連のやり取りを追跡する仕組み
HTTPはステートレス(状態を保持しない)のため、
セッションを使ってユーザーの情報(ログイン状態など)を保持する
通常、セッションIDという一意の識別子がクッキーに保存され、
それを使ってサーバーが特定のユーザーとその状態を識別・管理する -
属性特定のオブジェクトや要素に付加される特徴や性質
-
ドキュメンテーションコメントソースコード内で特定の構文に従って記述され、プログラムの動作や使用方法、メソッドやクラスの目的などを説明するコメントのこと
-
デバッグバグを取り除くための作業
-
クロスサイトスクリプティング攻撃(XSS)攻撃者が不正なスクリプトをWebフォームなどに入力、送信し、ブラウザで実行させる
【対策】
・ユーザーからの入力データをエスケープする
・クライアントサイドでの入力検証を行う -
エスケープ文字や文字列を元の表記と同じ意味を持つ別の表記に置き換える処理
-
入力検証
-
SQLインジェクション不正なSQLクエリをWebフォームなどに入力、送信し、データベースを操作する攻撃
【対策】
・プリペアドステートメントを使用する
・クエリ内のユーザー入力をサニタイズ(無毒化)し、エスケープする -
プリペアドステートメント
-
サニタイズ利用者が入力した文字やコードを安全な形に変換する処理
-
OSコマンドインジェクション攻撃者が不正なOSコマンドをWebフォームなどに入力、送信し、実行させる攻撃
【対策】
・ユーザー入力をエスケープし、許可されたコマンドのみ実行する
・システムコマンドの実行を制限する -
インジェクション(injection)注射
-
nullインジェクション
(nullバイト攻撃)null文字(\0)を使用して、ファイル操作などでバイパスを試みる攻撃
【対策】
・ファイルパスのバリデーションを行う
・ヌルバイトを削除する -
バイパス通常の処理や手続きを省略して、別の方法で目的を達成すること
-
バリデーション値の検証(正しい値がどうか)
-
メールヘッダインジェクション電子メールヘッダに不正なデータを挿入し、スパム送信などを行う攻撃(なりすまし)
【対策】
・ユーザー入力をエスケープし、適切なバリデーションを行う
・メールヘッダの構築に信頼できる関数を使用する -
クロスサイトリクエストフォージェリ
(CSRF)ログインしているユーザに不正なリンクを踏ませることで、あたかもそのユーザが操作したかのように、Webアプリに対して不正なリクエストを送信する攻撃
【対策】
・ワンタイムトークンの発行と検証
・リクエスト送信元のリファラーの確認
・reCHAPTHAの実装 -
リファラーユーザがあるWebページを訪れる際に経由したWebページの事
-
reCHAPTHA"私はロボットではありません"のようなメッセージでマウスでチェックをさせたりする機能。
-
パストラバーサル
(ディレクトリトラバーサル)攻撃者がウェブアプリケーションの許可なしにファイルシステム内のファイルにアクセスする攻撃
【対策】
ユーザー入力から外部ファイルへのパスを適切に制御し、許可されたディレクトリ内でのみファイル操作を許可する -
セッションハイジャック攻撃者が合法的なユーザーセッションを奪取し、不正なアクセスを行う攻撃
【対策】
・セッションIDを安全に保管し、HTTPSを使用する
・セッションタイムアウトを設定し、長期間のセッションを避ける -
セッション特定の期間中にユーザーとシステムが相互にやり取りする状態
-
ファイルアップロード攻撃攻撃者が不正なファイルをアップロードし、ウェブサーバーやアプリケーションに対する攻撃を行う
【対策】
アップロードされたファイルの拡張子とコンテンツを検証し、不正なファイルをブロックする -
eval攻撃eval 関数などを通して、攻撃者が不正なコードを実行させる攻撃
【対策】
eval 関数を使わない -
eval関数文字列として渡されたPythonの式やコードを実行するための組み込み関数
-
インクルード攻撃ファイルのインクルード機能を悪用して、不正なコードを実行させる攻撃
【対策】
・ユーザー入力をファイルパスとして使用する前に適切なバリデーションと制御を行う
・不要なファイルの読み込みを制限する -
プログラムの構造の順次とは記述された順に処理を実行
-
プログラムの構造の選択とは条件によって処理を分岐
-
プログラムの構造の反復とは特定の処理を繰り返し実行
-
順次・選択・反復を組み合わせてプログラムを組み立てていく手法のことをなんというか構造化プログラミング
-
if命令与えられた条件式がtrue・falseのいずれであるかによって、実行すべき処理を分岐する命令
if(条件式){
条件式がtrueのときに実行する処理
}else{
条件式がfalseのときに実行する処理
} -
switch命令等価演算子による多岐分岐
switch(式){
case 値1:
式==値1であるときの処理
case 値2:
式==値2であるときの処理
case 値3:
式==値3であるときの処理
default:
式==値1、2、3でもないときの処理
} -
break命令現在のswitchブロックから脱出するための命令
ループからも抜けられる(foreach、for、whileでも使用できる) -
switch命令のcase句にbreak命令がないとどうなるか後続のcase句が続けてじっこうされてしまう
-
フォールスルーbreak命令を省略して、複数のcase句を続けて実行する
-
match式値を返せるswitch
match(式){
値1=>式1,
値2=>式2,
default=>式,
} -
match式のswitch命令との相違点「===」演算子で比較
break句は不要
=>の右辺には単一の式
=>の左辺には任意の式指定できる -
while命令与えられた条件式がtrueである間、ループを繰り返す命令
while(条件式){
条件式がtrueである間繰り返し実行する処理
} -
while命令と do~while命令の違いは?while命令がループの先頭で条件式を判定(前置判定)するのに対して、
do~while命令はループの最期に判定(後置判定)している -
無限ループ終了条件がtrueにならないループの事
-
for命令for(初期化式; 継続条件式; 増減式){
ループ内で実行する処理
} -
foreach命令指定された配列の要素を取り出して、戦闘から順番に処理する
foreach(配列 as 値変数){
ループ内で実行する処理
}
foreach(連想配列 as キー変数 => 値変数){
ループ内で実行する処理
} -
continue命令現在の周回だけをスキップし、ループそのものは継続して実行する
-
関数の呼び出し戻り値=関数名(引数,・・・)
-
文字列の長さを取得する関数mb_strlen関数
-
文字列を大文字⇔小文字で変換するmb_convert_case関数
-
部分文字列を取得位置から取得するmb_substr関数
-
部分文字列を検索文字から取得するmb_strstr関数
-
文字列に含まれる特定の文字列を別の文字列に置換するstr_replace関数
大文字と小文字を区別したくないときはstr_ireplace関数
文字列に含まれる文字を除去することにも使用できる -
文字列を特定の区切り文字で分割するexplode関数
-
特定の文字が最初に現れた位置を検索するmb_strpos関数
大文字と小文字を区別したくないときはmb_stripos関数 -
特定の文字が最後に現れた位置を検索するmb_strrpos関数
大文字と小文字を区別したくないときはmb_strripos関数 -
部分文字列の登場回数をカウントするmb_substr_count関数
-
文字列に指定した文字列が含まれるかの判定str_contains関数
-
指定した文字列が文字列の先頭にあるかを判定するstr_starts_with関数
-
指定した文字列が文字列の末尾にあるかを判定するstr_ends_with関数
-
文字列の前後の空白を除去するtrim関数
-
文字列の前方の空白を除去するltrim関数
-
文字列の後方の空白を除去するrtrim関数
-
文字列を整形するprintf関数
-
変換指定子(プレイスホルダー)とは値をフォーマットして文字列として出力する際に使用する記号や文字列の形式指定子のこと
-
符号指定子数値に付与する符号を指定する
-
パディング指定子不足している桁を埋めるための文字
デフォは空白
0
0以外の時は頭に’を付ける 例)’* -
アラインメント指定子左寄せか右寄せ化を指定
デフォは右寄せ
ーを付与することで左寄せとなる -
表示幅指定子全体の表示桁を指定
-
精度指定子小数点以下の桁数
頭に.を付ける -
型指定子 %パーセント文字
-
型指定子 b引数を整数とみなし、2進数として表現
-
型指定子 c引数を整数とみなし、ASCII値の文字として表現
-
型指定子 d引数を整数とみなし、10進数として表現
-
型指定子 e,E引数を指数表記として処理
-
型指定子 u引数を整数とみなし、符号なし10進数として表現
-
型指定子 f引数を浮動小数点として表現(ロケール考慮)
-
型指定子 F引数を浮動小数点として表現
-
型指定子 o引数を整数とみなし、8進数として表現
-
型指定子 s引数を文字列としてみなして処理
-
型指定子 x引数を整数とみなし、16進数(小文字)として表現
-
型指定子 X引数を整数とみなし、16進数(大文字)として表現
-
ロケールとは地域や言語、文化的な設定を定義するための情報のこと
-
文字列を変換するmb_convert_kana関数
-
変換オプション r英文字 全角→半角
-
変換オプション R英文字 半角→全角
-
変換オプション n数字 全角→半角
-
変換オプション N数字 半角→全角
-
変換オプション a英数字 全角→半角
-
変換オプション A英数字 半角→全角
-
変換オプション sスペース 全角→半角
-
変換オプション Sスペース 半角→全角
-
変換オプション kカタカナ 全角→半角
-
変換オプション Kカタカナ 半角→全角
-
変換オプション hひらがな 全角→半角
-
変換オプション Hひらがな 半角→全角
-
変換オプション cカタカナ 全角 → ひらがな 全角
-
変換オプション Cカタカナ 半角 → ひらがな 半角
-
変換オプション V濁点付きの文字を1文字に変換
-
文字エンコーディングを変換するmb_convert_encoding関数
-
指定のファイルに文字列を出力するfile_put_contents関数
-
配列の要素数を取得するcount関数
-
要素の登場回数をカウントするarray_count_values関数
-
配列の内容を連結するarray_merge関数
-
配列の各要素を結合して文字列を返すimplode関数
-
配列の末尾に要素を追加array_push関数
-
配列の末尾から要素を除去array_pop関数
-
配列の先頭から要素を除去array_shift関数
-
配列の先頭に要素を追加array_unshift関数
-
スタック後入れ先出し、先入れ後出しの構造
array_pushとarray_popで表現 -
キュー先入れ先だしの構造
array_pushとarray_shiftで表現 -
配列の任意の場所に要素を追加したり、既存の要素を置換削除するarray_splice関数
-
特定範囲の要素だけ取り出すarray_slice関数
-
配列から特定の値を検索して取り出すarray_search関数
-
配列に特定の要素が存在するかを確認するin_array関数
-
通常配列の値を昇順で並び替えるsort関数
-
通常配列の値を降順で並び替えるresort関数
-
連想配列の値を昇順で並び替えるasort関数
-
連想配列の値を降順で並び替えるarsort関数
-
連想配列のキーを昇順で並び替えるksort関数
-
連想配列のキーを降順で並び替えるkrsort関数
-
ソート方法 SORT_REGULAR型を変更せずにソート
-
ソート方法 SORT_NUMERIC数値としてソート
-
ソート方法 SORT_STRING文字列としてソート
-
ソート方法 SORT_LOCALE_STRING文字列としてソート(ロケール考慮する)
-
ソート方法 SORT_NATURAL文字列としてソート(自然順)
-
ソート方法 SORT_FLAG_CASE文字列ソートで大文字小文字を区別しない
-
自分のルールで配列を並び替える関数usort関数
-
配列の内容を取得、処理するarray_walk関数
処理方法のコールバック関数を引数として渡せる -
配列内の要素を加工するarray_map関数
配列を加工するための関数を引数として渡す -
配列の内容を特定の条件で絞り込むarray_filter関数
条件式のある関数を引数として渡す
関数には配列の値が渡される
キーを渡したい場合はオプション設定が必要 -
配列内の要素を順に処理して1つにまとめるarray_reduce関数
要素を演算するコールバック関数を引数として渡す
コールバック関数の引数は、演算結果を格納する変数と個々の要素を受け取るための変数を用意する -
正規表現あいまいな文字列パターンを表現する記法
-
正規表現で文字列を検索するpreg_match関数
-
サブマッチパターン正規表現パターンの中で、()で囲まれた部分的なパターン
-
サブマッチ文字列サブマッチパターンにマッチした文字列
-
全てのマッチ文字列を取得するpreg_match_all関数
-
正規表現で文字列を置換するpreg_replace関数
-
正規表現で置き換えたコールバック関数で処理をするpreg_replace_callback関数
-
正規表現で文字列を分割するpreg_split関数
-
正規表現パターンの修飾子 i大文字小文字の区別を無視
-
正規表現パターンの修飾子 m複数行検索に対応(マルチラインモード)
-
正規表現パターンの修飾子 s単一行検索(シングルモード)
-
正規表現パターンの修飾子 xコメントの有効化
-
ファイルを開く関数fopen関数
-
ファイルを閉じる関数fclose関数
-
ファイルハンドルファイルを操作するための情報
-
オープンモード r読み込み専用
-
オープンモード r+読み書き可能(ファイルが存在する場合はエラー)
-
オープンモード w書き込み専用(既存ファイルの内容をクリア、存在しない場合は新規作成)
-
オープンモード w+読み書き可能(既存ファイルの内容をクリア、存在しない場合は新規作成)
-
オープンモード a書き込み専用(追記専用(末尾にしか書き込めない)、存在しない場合は新規作成)
-
オープンモード a+読み書き可能(追記専用(末尾にしか書き込めない)、存在しない場合は新規作成)
-
オープンモード x書き込み専用(ファイルが存在する場合はエラー)
-
オープンモード x+読み書き可能(ファイルが存在する場合はエラー)
-
オープンモード c書き込み専用(存在しない場合は新規作成)
-
オープンモード c+読み書き可能(存在しない場合は新規作成)
-
オープンモード bバイナリモード
-
オープンモード tテキストモード
-
指定されたメッセージを出力して、スクリプトを強制終了するための関数die関数
-
開かれたファイルに書き込みを行うfwrite関数
-
ファイルのロックを行う関数flock関数
-
CSVを読み込むfgetcsv関数
-
絶対値を求める関数abs関数
-
文字列として表現された数値を任意の基数間で変換する関数base_convert関数
-
引数で指定した数値を切り上げて、最も近い整数を返す関数ceil関数
-
引数で指定した数値を切り捨てて、最も近い整数を返す関数floor関数
-
2つの整数を割り算し、その商の整数部分を返す関数intdiv関数
-
浮動小数点数の割り算の剰余(余り)を返す関数fmod関数
-
引数の中で最大の値を返す関数max関数
-
引数の中で最小の値を返す関数min関数
-
指定した範囲内でランダムな整数を返す関数rand関数
-
指定した数の累乗を計算して返す関数pow関数
-
指定した小数点の精度で四捨五入した値を返す関数round関数
-
指定した数値の平方根を返す関数sqrt関数
-
円周率πの値を返す関数pi関数
-
指定した角度の余弦(cos)を返す関数cos関数
-
指定した角度の正弦(sin)を返す関数sin関数
-
指定した角度の正接(tan)を返す関数tan関数
-
角度を度からラジアンに変換する関数deg2rad関数
-
角度をラジアンから度に変換する関数red2deg関数
-
自然対数の底eのべき乗を計算して返す関数exp関数
-
引数の常用対数(底10の対数)を返す関数log10関数
-
指定した底での対数を計算して返す関数(省略時は自然対数)log関数
-
変数を破棄する関数unset関数
-
function命令ユーザー定義関数を定義できる
function 関数名(仮引数,…){
実行する処理
return 戻り値;
} -
引数メソッドの中で参照可能な変数
-
呼び出しもとから渡される値の事実引数
-
受け取り側の変数の事仮引数
-
戻り値関数が処理した結果を表す
-
return命令戻り値を返す命令
-
型宣言明示的に肩を指定することができる
-
型宣言で利用できる型 bool真偽値
-
型宣言で利用できる型 float浮動小数点数
-
型宣言で利用できる型 int整数
-
型宣言で利用できる型 string文字列
-
型宣言で利用できる型 array配列
-
型宣言で利用できる型 iterable配列・traversal型
-
型宣言で利用できる型 callableコールバック関数
-
型宣言で利用できる型 object任意のオブジェクト
-
型宣言で利用できる型 クラス・インターフェイス名指定されたクラス・インターフェイス
-
型宣言で利用できる型 mixed任意の型
-
型宣言で利用できる型 void何も返さない
-
型宣言で利用できる型 self現在のクラス
-
型宣言で利用できる型 static最初に呼び出したクラス
-
null許容型?を型名の先頭に付与することで、nullを許容できる
-
require命令外部ファイルを一度だけインクルードする
ファイルが見つからない場合処理を中断する -
include命令外部ファイルを一度だけインクルードする
ファイルが見つからない場合でも処理は継続する -
require_once・include_once命令外部ファイルをインクルードする
循環参照される -
グローバルスコープスクリプト全体から参照可能な変数の有効範囲
-
ローカルスコープ定義された関数の中でのみ参照できる変数の有効範囲
-
関数内でグローバル変数を利用するにはglobal命令で「グローバル変数のようにふるまうローカル変数」を定義する
-
静的変数static命令で定義する
関数の初回呼び出し時にのみ初期化され、関数の処理が終了しても維持される -
可変関数$変数名()の形式で呼び出せる関数の事
-
無名関数使い捨ての関数
function(仮引数,……){
return 戻り値;
}
変数に代入することができる -
use命令親スコープから変数を引き継ぐこともできる
-
アロー関数fn(仮引数,…) => 任意の式
-
ジェネレーターyield命令を利用する関数
ログイン