すなりん

php

PHP入門 配列関数 要素の登場回数をカウントする(array_count_values関数)

無条件に、配列配下の要素数をカウントするcount関数に対して、array_count_values関数を利用することで、要素ごとの登場回数をカウントすることもできます。構文:array_count_values関数array_count_values(array $array):array$arrayカウント対象の配列例:array_count_values関数の戻り値は「要素地=>登場回数」形...
php

PHP入門 配列関数 配列の要素数を取得する(count関数)

count関数は、配列に含まれる要素の数を取得します。構文:count関数count(array $value ):int$value対象の配列$modeカウントの方法例:基本<?php$data = ;print count($data);実行結果例:多次元配列2次元配列の正体は、あくまで「配列の配列」です。「array型の要素を持つ1次元配列」と言い換えていいでしょう。よって、sount関数の...
php

PHP入門 文字列関数 電子メールを送信する(mb_send_mail関数)

mb_send_mail関数は、件名や本文にマルチバイト文字を含んだメールを送信するための関数です。よく似た関数でmail関数もありますが、こちらはマルチバイト文字に対応していません。文字エンコーディングの変換を自前で行う必要があります。構文:mb_send_mail関数mb_send_mail(string $to , string $subject, string $message ]):bo...
php

PHP入門 文字列関数 文字エンコーディングする(mb_convert_encoding関数)

マルチバイト文字(日本語)を扱う場合、文字エンコーディングを意識する必要があります。アプリケーション内で使用する文字エンコーディングは統一しておくことが原則です。データベースやテキストファイルを他のアプリケーションと共有している場合は、必ずしも文字エンコーディングを統一できない場合もあります。そのような場合は、アプリケーション側で明示的に文字エンコーディングを変換する必要があります。文字エンコーデ...
php

PHP入門 文字列関数 文字列を変換する(mb_convert_kana関数)

mb_convert_kana関数を利用することで、マルチバイト文字をひらながからカタカナ、全角文字から半角文字に変換できます。構文:mb_convert_kana関数mb_convert_kana(string $string ]):string$string任意の文字列$mode変換オプション$encoding使用する文字エンコーディング(省略時はdefault_charsetパラメータの値)...
php

PHP入門 文字列関数 文字列を整形する(printf関数)

printf関数は、指定された書式文字列に基づいて文字列を整形し、その結果を出力します(戻り値は、整形済み文字列のバイト数)。構文:printf関数printf(string $format, mixed … $values):int$format書式文字列$values書式に埋め込む文字列書式文字列$formatには、変換指定子と呼ばれるプレイスホルダーを埋め込むことができます。プレイスホルダー...
php

PHP入門 文字列関数 文字列の前後から空白を除去する(trim/ltrim/rtrim関数)

trim/ltrim/rtrim関数を利用することで、文字列前後の空白を除去できます。trim関数は前後双方の空白、ltrim関数は前方だけの空白、rtrim関数は後方だけの空白を、それぞれ除去します。構文:trim/ltrim/rtrim関数trim(string $string ):stringltrim(string $string ):stringrtrim(string $string ...
php

PHP入門 文字列関数 文字列に特定の文字列が含まれるかを判定する(str_contains/str_starts_with/str_ends_with関数)

文字列に指定された文字列が含まれるかを判定するには、str_contains関数を利用します。単に含まれるだけでなく、ある文字列が先頭/末尾に位置するか(=文字列がある文字列で始まる/終わるか)を判定するには、str_starts_with/str_ends_with関数も利用します。構文:str_contains/str_starts_with/str_ends_with関数str_contai...
php

PHP入門 文字列関数 部分文字列の登場回数をカウントする(mb_substr_count関数)

文字位置を検索するmb_strpos関数に対して、mb_substr_count関数を用いることで、部分文字列が登場する回数をカウントすることもできます。文字列の大文字/小文字を変換するには、mb_convert_case関数を使用します。構文:mb_substr_count関数mb_substr_count(string $haystack, string $needle ):int$hayst...
php

PHP入門 文字列関数 特定の文字位置を検索する(mb_strpos/mb_strrpos関数)

ある文字列の中で特定の部分文字列が登場する文字位置を取得するには、mb_strpos/mb_strrpos関数を利用します。構文:mb_strpos/mb_strrpos関数mb_strpos(string $haystack, string $needle ]):int|falsemb_strrpos(string $haystack, string $needle ]):int|false$h...
php

PHP入門 文字列関数 文字列を特定の区切り文字で分割する(explode関数)

文字列を特定の区切り文字で分割するには、explode関数を利用します。構文:explode関数explode(string $separator , string $string :array$separator区切り文字$string分割する文字列$limit分割の最大数例:カンマを区切り文字として分割する <?php $data = '山田,工藤,田中,花子,玲子'; print_r(exp...
php

PHP入門 文字列関数 部分文字列を置換する(str_replace関数)

文字列に含まれる特定の部分文字列を別の文字列で置き換えるには、str_replace関数を利用します。構文:str_replace関数str_replace(string|array $search , string|array $replace, string|array $subject ):string|array$search置き換える部分文字列$replace置き換える後の文字列$sub...
php

PHP入門 文字列関数 部分文字列を取得する(mb_strstr関数)

文字位置で部分文字列を特定するmb_substr関数に対して、特定の文字列がみつかった場所を基点に部分文字列を取得するならば、mb_strstr関数を利用します。構文:mb_strstr関数mb_strstr(string $haystack, string $needle ]):string|false$haystack対象の文字列$needle検索する文字列$before_needletrue...
php

PHP入門 文字列関数 部分文字列を取得する(mb_substr関数)

mb_substr関数は、元の文字列から部分的な文字列を取り出します。構文:mb_substr関数mb_substr(string $string , int $start ]):string$string対象の文字列$start取得開始位置(文字位置は0スタート)$length取り出す文字数$encoding使用する文字エンコーディング(省略時はdefault_charsetパラメータの値)引数...
php

PHP入門 文字列関数 文字列を大文字、小文字で変換する(mb_convert_case関数)

文字列の大文字/小文字を変換するには、mb_convert_case関数を使用します。構文:mb_convert_case関数mb_convert_case(string $string , int $mode ):string$string対象の文字列$mode変換モード$encoding使用する文字エンコーディング(省略時はdefault_charsetパラメータの値)変換モードモード概要MB...
php

PHP入門 文字列関数 文字列の長さを取得する(mb_strlen関数)

mb_strlen関数は、与えらえた文字列の長さを取得します。構文:mb_strlen関数mb_strlen(string $string):int$string:対象の文字列$encoding:使用する文字エンコーディング引数$encodingは、文字列を処理する際に利用する文字エンコーディング名です。個々の関数で明示してもかまいませんが、省略時には、default_charsetパラメータで設...
php

PHP入門 goto命令

goto命令を利用することで、スクリプトの処理を強制的に他に移動できます。構文:goto命令goto ラベル名ラベル名:1、移動できる制限異なるファイルには移動できない関数やクラス/メソッドの中には移動できないループの外からループ(switch命令を含む)の内部に移動できない運用はさけるべきgoto命令は多くの場合、スクリプトの流れを読みにくくする原因になります。サンプルgoto命令を利用する場合...
php

PHP入門 ループの制御(breack、continue)

while/do~while、for/foreach命令では、あらかじめ決められた終了条件を満たしたタイミングでグループを終了します。しかし、処理によっては、特定の条件を満たしたところで強制的にグループを中断したい、あるいは、特定の周回だけをスキップしたい場合があります。そのような場合は、breack命令やcontinue命令を使用します。breack命令breack命令は、現在のループを強制的に...
php

PHP入門 繰り返し処理

PHPの繰り返し構文のwhile/do~while、for/foreach命令について解説しています。while/do~while命令while/do~while命令には、与えられた条件式がtrue(真)である間、ループを繰り返します。while命令はループの先頭で条件式を判定(前置判定)するのに対して、do~while命令はループの最後に判定(後置判定)しています。この違いは、「ループを開始する...
制御構文

PHP入門 条件分岐

条件分岐構文に属するif命令とswitch/match命令について解説しています。if命令(単純分岐)if命令は、与えらえた条件がtrue/falseのいずれかであるかによって、実行すべき処理を分岐する命令です。elseブロックを省略することもできます。構文:if命令if(条件式){ //条件式がtrueである場合に実行する処理}else{ //条件式がfalseである場合に実行する処理}<?ph...
php

PHP入門 エラー制御演算子

エラー制御演算子(@)は、特定の式の先頭に付加することで、その命令で発生したエラーメッセージを抑制(表示されない)します。<?php$data = ;print $data; //結果:Warning: Undefined array key "orange" in E:\xampp\htdocs\hello.php on line 10print @data; //結果:表示されない連想配列$d...
php

PHP入門 実行演算子

実行演算子(`)は、バッククォートで囲んだブロックを、シェルコマンドとして実行します。dirコマンドを実行演算子から呼び出す。mb_convert_encodingは、文字コードを変換するための関数です。Windows環境では、dirコマンドの出力結果はShift-JISで、スクリプトの文字コード(UTF-8)と合致しないので、出力にあたっては変換が必要になります。<?php$result = `...
php

PHP入門 文字列演算子

文字列演算子(.)は、左式/右式の文字列を連結します。<?php$x = 'ハロー';$y = 'ワールド';print $x.$y; //結果:ハローワールドオペランドが数値リテラルである場合には、16進数表現や指数表現も、文字列かされるときには標準的な10進数/小数表現となります。<?php$x = 0xFF;$y = 1.5E2;print $x.$y; //結果:255150「0xFF1....
php

PHP入門 ビット演算子

ビット演算を行うための演算子です。ビット演算とは、整数を2進数で表したときの各桁(ビット単位)に対して論理計算を行う演算のことです。主なビット演算子演算子概要用例&論理積。左式/右式の双方にセットされているビットをセット10&1→1010&0001→0000→0|論理和。左式/右式のいずれかにセットされているビットをセット10|1→1010|0001→1011→11^排他的論理和。左式/右式のいず...
php

PHP入門 論理演算子

論理演算子は、複数の条件式を論理的に結合しその結果をtrue/falseとして返します。比較演算子と組み合わせて利用するのが一般的です。論理演算子を利用することで、より複雑な条件式を表現できるようになります。主な論理演算子演算子概要用例$$論理積。左右の式がともにtrueの場合にtrue$x && $y 結果:falseand論理積。左右の式がともにtrueの場合にtrue$x and $y 結果...
php

PHP入門 比較演算子

左辺と右辺の値を比較し、その結果をtrue/falseとして返します。比較演算子は、if、while、do~whileのような条件分岐/繰り返し命令で条件式を表すために使用します。主な比較演算子演算子概要用途==左辺と右辺の値が等しい場合はtrue7==7 結果:true===左辺と右辺の値が等しく、かつ、同じデータ型である場合はtrue7==='7' 結果:false!=左辺と右辺の値が等しくな...
php

PHP入門 代入演算子

左辺で指定した変数に対して右辺の値をセット(代入)するための演算子を解説しています。また、代入演算子には、代数演算子やビット演算子などを合わせた機能を提供する複合代入演算子も含まれます。主な代入演算子演算子概要用例=変数などに値を代入$x = 10;+=左辺と右辺を加算した結果を、左辺に代入$x = 5; $x+=2; 結果は7-=左辺と右辺を減算した結果を、左辺に代入$x = 5; $x-=2;...
php

PHP入門 代数演算子

算術演算子とも言います。四則演算をはじめ、日常的な数学で利用する演算子について解説します。主な代数演算子演算子概要例+数値の和5+4 = 9-数値の差6-3 = 3*数値の積3*4 = 12/数値の商15 / = 5%数値の剰余13 % 3 = 1**数値の累乗2 ** 3 = 8++前置加算(代入前に加算)$x = 3;$y = ++$x; $yは4++後置加算(代入前に加算)$x = 3;$y...
php

PHP入門 型の相互変換

PHPはデータ型に関しては比較的寛容な言語ですが、値を特定の型に強制的に変換(キャスト)する必要がある場合があります。その方法を解説しています。暗黙的な変換PHPでは、その時々の状況で値を適切なデータ型へ変換することで、「それぞれの文脈に応じてできるだけなんらかの処理をしよう」とします。これを型の暗黙的な変換と言います。明示的な変換(キャスト)厳密な比較や演算をしたい場合、暗黙的な変換がされると困...
php

PHP入門 配列

複数の値を納めることができる配列について解説しています。配列の基本配列は仕切りに番号が振られており、番号によって値にアクセスすることができます。構文:配列の生成$配列名 = 配列は、カンマ区切りの値をブラケット(とします。先頭から順に0、1、2・・・という番号が振られます。ブラケット([])でくくられた部分は、インデックス番号または添え字と呼ばれ、配列の何番目の要素を取り出すか表します。下記の例で...
php

PHP入門 データ型

PHPのデータ型について解説しています。概要データ型とは、データの種類のことです。PHPでは、さまざまなデータをコードの中で扱えます。たとえば、「abc」や「あいうえお」は文字列型、1や10は数値型、true(真)やfalse(偽)は真偽型に分類できます。PHPは、データ型に対して寛容です。最初に文字列を格納した変数にあとから数値をセットしても問題ありません。変数のほうが中身に応じて自動的に形を変...
php

PHP入門 定数

変数はデータの入れ物ですが、スクリプトの実行途中でデータの書き換えを行うことができます。それに対して定数は、中身を更新できない入れ物(変数)を定数と言います。ここでは、PHPの定数の解説をしています。定数の基本const命令を使用して定数を宣言します。構文const 定数名 = 値例<?phpconst TAX = 1.1;$price = 1000;$sum = $price * TAX;pri...
php

PHP入門 変数

スクリプトの途中結果などのデータを入れておく、変数(データの入れ物)について解説変数の宣言PHPでも、変数の利用にあたって宣言が必要です。コード上で変数に初めて値を格納したタイミングで、変数のための領域が自動的にメモリ上に確保されます。<?php$msg = 'はじめまして、みなさん';print $msg; //結果:はじめまして、みなさんprint $msg;のように参照できるのは、あらかじめ...
php

PHP入門 基本的なPHPアプリの作成方法

PHPでアプリ開発をするための基本的なコード作成やPHPファイルの作成方法について解説しています。基本的なアプリの作成ブラウザに「はじめてのPHP」と表示するだけの簡単なアプリケーションを作成します。1、VSCodeでファイルを作成するためのフォルダを開く。VSCodeを起動し、メニューバーから(❶)→(❷)を選択します。XAMPPのhtdocsフォルダを指定します。(C:\xampp\htdoc...
php

PHP入門 Visual Studio Codeのインストール

「Visual Studio Code」のダウンロードからインストール、PHP設定等の方法について解説しています。1、「Visual Studio Code」ダウンロードVisual Studio Codeは、以下の本家サイトからダウンロードしてインストールを行います。ローカルストレージにダウンロードします。2、インストール方法ダウンロードした、「VSCodeUserSetup-x64-1.96....
php

PHP入門 XAMPPによる開発環境のセットアップ

PHPの開発環境である「XAMPP(ザンプ)」のダウンロードからセットアップ、PHP.iniの設定まで解説しています。1、本家サイトからXAMPPインストーラーをダウンロード以下のURLにアクセスしWindows版のXAMPPをダウンロードします。赤枠のダウンロードボタンをクリックします。2、インストーラを起動するダウンロードした「xampp-windows-x64-8.2.12-0-VS16-i...
JavaScript

jQuery オブジェクトに対する便利なメソッド

.each()は、$.each()と同様に、主に反復処理のために使用します。jQueryオブジェクト内の要素を1つずつ走査し、各要素に対してコールバック関数を適用します。コールバック関数には、要素のインデックス値と要素自体を引数として渡せます。.get()は、jQueryオブジェクトからDOM要素を取り出します。引数としてインデックス値を渡した場合、そのインデックス値にマッチする、1つの要素が返さ...
JavaScript

jQuery その他のユーティリティメソッド

$.extend()は、複数のオブジェクトをマージし、各オブジェクトが内包するプロパティを対象オブジェクトにまとめます。引数が1つだけの場合、対象オブジェクトが省略されたと見做し、jQueryオブジェクトそのものが対象オブジェクトとして選択されます。第1引数は「ディープコピー」スイッチで、既定値はfalseです。これをtrueに設定すると、オブジェクトが再帰的にマージされます。具体的には、オブジェ...
JavaScript

jQuery 「ユーティリティ」反復処理や条件判断に便利なメソッド

$.each()は、jQueryを使ったスクリプティングでは特に使用頻度の高い反復処理のためのメソッドです。オブジェクトや配列の要素を順に走査し、各要素に対してコールバック関数を実行します。コールバック関数には、現在の要素のインデックスと、現在の要素が引数として渡せます。なお、反復処理をすぐに止めてループから脱出したいときは、コールバック関数から「return false亅します。なお、$.eac...
JavaScript

jQuery 「ユーティリティ」配列を操作する

$.merge()は、2つの配列をマージします。配列2のすべての要素が、配列1に追加されますので、配列1を処理前の状態で残したい場合は、あらかじめ複製します。$.map()は、配列またはオブジェクトの各要素に対してコールバック関数の処理を適用し、その結果を新しい配列として返します。このメソッドはjQuery1.6から配列だけでなくオブジェクトを扱えるようになりました。ただし、jQueryオブジェク...
JavaScript

jQuery 「ユーティリティ」文字列の前後からホワイトスペースを除去する

文字列の前後から、スペース、タブ文字を除去します。改行コードは除去されません。例えば、メールアドレス等のご入力を防ぎたい、ログインIDやパスワードの入力をアシストしたい、といったときに利用できる便利なメソッドです。書式jQuery.trim(文字列)$.trim(文字列)str = jQuery.trim(str);str = $.trim(str);サンプル文字列の前後から不要なホワイトスペース...
Deferredオブジェクト

jQuery Deferredの状態を調べる

Deferredオブジェクトの状態を調べます。pending、resolved、rejectedのいずれかを返します。デバック時などに有用なメソッドです。書式dfd.state()var dfd = $.Deferred();var state = dfd.state();サンプルDeferedオブジェクトの状態を取得して出力する<body> <div class="main"> <div cla...
Deferredオブジェクト

jQuery 同期処理と非同期処理について

コードに書いてある順番に処理が進み、ひとつの処理をしている間は後続の処理は実行されない、これが同期処理です。サーバーから応答が返ってくるまでの間、別の処理が走り効率的に処理するのが非同期処理です。解説JavaScriptでは、Ajaxに限らず非同期処理を行うケースがあります。<body> <div class="main"> <div class="header"> <h1> サンプル </h1>...
Callbacksオブジェクト

jQuery Callbacksオブジェクトをロックする・ロックされているか確認する

lock()はCallbacksオブジェクトをその時点の状態、その時点で与えられている引数で「ロック」します。ロック前にadd()されていたコールバックはfire()しても実行されません。「memory」フラグを指定して生成したCallbacksオブジェクトでは、lock()後にadd()で追加することでコールバックを実行できますが、リスト中の各コールバック関数に渡される引数をロックした時点に固定...
Callbacksオブジェクト

jQuery Callbacksオブジェクトを無効化する・無効化されているか確認する

disable()はCallbacksオブジェクトを無効化し、以後fire()で実行できなくなります。disabled()はCallbacksオブジェクトが無効化されていればtrue、そうでなければfalseを返します。書式callbacks.disable()callbacks.disabled()callbacks.disable();var disabled = callbacks.disa...
Callbacksオブジェクト

jQuery Callbacksが実行されたか確認する

Callbacksオブジェクトが一度でもfire()されていたらtrue、そうでなければfalseを返します。書式callbacks.fired()callbacks.fired();サンプルCallbacksオブジェクトが実行済みか確認する<body> <div class="main"> <div class="header"> <h1>サンプル</h1> </div> <div class=...
Callbacksオブジェクト

jQuery [Callbacks] コンテキストを指定してCallbacksオブジェクトを実行する

callbacks.fire()メソッドと似ていますが、引数として「コンテキスト」を渡せる点が異なります。コンテキストとして渡された要素は、Callbacksオブジェクトに登録された各コールバック関数の中で「this」で参照できます。fireWidth()の第2引数は配列またはオブジェクトで渡す必要があります。書式callbacks.fireWith(コンテキスト,引数)callbacks.fir...
Callbacksオブジェクト

jQuery Callbacksオブジェクトを実行する

Callbacksオブジェクトに追加されているコールバック関数を、fire()に渡した引数で一括して実行します。書式callbacks.fire( 引数 )callbacks.fire(str);サンプルCallbacksオブジェクトに追加した関数を実行する<body> <div class="main"> <div class="header"> <h1>サンプル</h1> </div> <di...
Callbacksオブジェクト

jQuery Callbacksオブジェクトにコールバックを追加する

$.Callbacks()で生成したCallbacksオブジェクトに、引数で渡したコールバック関数を追加します。複数のコールバック関数を追加する場合は配列として渡します。書式callbacks.add( コールバック )callbacks.add(myfunc);サンプルCallbacksオブジェクトを生成してコールバック関数を追加する<body> <div class="main"> <div ...
Callbacksオブジェクト

jQuery Callbacksオブジェクトを生成する

Callbacksオブジェクトを生成します。引数の「フラグ」を指定できます。フラグはスペースで区切ることで複数指定可能です。各フラグは、Callbacksオブジェクトを次のように設定します。once:1度だけ起動できるCallbacksのリストを生成するmemory:$.Callbacks.add()でコールバック関数を追加したときに、それより前に$.Callbacks.fire(引数)で実行され...