PHP

クラス定数

interface -インターフェイス-

1,インターフェイスとは抽象メソッドのみ(内容は記述しない)定義でき、抽象クラスと同じようにインスタンスは生成できない。 インスタンスができないということは、"抽象クラス"と同じく"継承"されるのだが "インターフェイス"の場合は継承と呼ばずに"実装"…

クラス定数

定数は"define(定数名,値)"でグローバル定数として定義される。 いっぽう、クラス定数はクラス内に定義され、"const 定数名 = 値"で定義し、クラス内からの参照は"self::定数名"で呼ぶことが出来る。 クラス定数はインスタンスの必要が無く、クラス外から直…

static -静的メンバ- (インスタンスなしでもアクセスできる)

静的メンバとは 通常、メンバのアクセスはインスタンスを生成しないと出来ませんが アクセス修飾子をstaticに指定し、"クラス名::メソッド名()"でインスタンスを介さないで呼び出しが可能となります。*1 php 出力結果 2,000…

abstract -抽象クラス-

抽象クラスとは... 通常のクラスと違いインスタンスを生成できません。(エラーが出ます) 別のクラスに処理内容を継承(オーバーライド)される必要があります。 クラス名に"abstract class クラス名{~}"と定義します。 抽象クラス内に抽象メソッドとして"abst…

オーバーライド(親クラスのメソッドの上書)

オーバーライドとは 継承元の親クラスからメソッドを上書きして追加機能を備え付けられる。 php price; } public function setPrice($price){ $this->price = $price; } } //PriceSettingを継承 class Product extends PriceSetting{ //消費日数を10日以内に…

extends(継承)

sassでもextendにもあったように、一つのcssスタイルを 別の構造に引き継がせる事が出来るように、PHPの方は 定義したクラスのメソッドを別のクラスにextends(継承)することが出来る。 継承の書式 class 継承させるクラス名 extends 継承元のクラス名{...} …

オブジェクト指向-カプセル化

カプセル化とはクラス内の変数やメソッドなど外部からアクセスできる物を "カプセルで覆う事で遮断する”事を意味します。 カプセル化の利点「保守の強化」 カプセル化する事で保守性を強め、メンテナンスの簡略化が期待できる。 アクセス修飾子がpublicの場…

オブジェクト指向-コンストラクタ

コンストラクタとはインスンタンス作成時に呼び出されるメソッドである。 メソッド名を"__construct(変数1, 変数2, ...)"と付けて、インスタンス作成時で"new クラス名(引数1,引数2,...)"として値を受け渡す。 これは、製造日や更新日など簡単に変えられな…

クラス(設計図)を作る

クラスの作成方法 クラス名の宣言 クラス内のプロパティ値を格納するメンバ変数名を定義 クラス内でメンバメソッド名を宣言して、クラス中で実行するメソッドを記述 クラス宣言外の所にインスタンス(実体)を作成。 メンバ変数名に値を入力。 メソッドの実行…

printfとsprintfの違い

printf()はそのまま出力。 spritf()は変数に格納するときに使うので、フォームから受け取ったデータ(日付、個数など)に使われやすい

wordpressのテンプレートタグ

home_url メソッド サイトのホームURLを表示 home_url('/'); 説明 '/'を入れることでURLの末尾に'/'がつく bloginfo メソッド ブログの情報を取得、出力 bloginfo('パラメータ'); name ブログタイトル description ブログの説明 url ブログのURL template_ur…

ショートコードの活用

PHPのユーザー定義関数でWordpressのテンプレートタグを呼び出す書式を設定し、ユーザー定義関数ブランケット外に add_shortcode(ショートコード名、呼び出し関数)とする。 functions.php function b_info-d(){ return get_bloginfo('description'); } add_s…

nullとfalseと0と""(空文字)の違い

PHP

条件分岐を書いていて時々nullとfalseと0と""(空文字)ってどう区別するんだっけ? というのが偶にあります。特にフォーム未記入欄のチェック時に。 また関数にも isset()...変数が空であるかどうかを検査する と empty()...変数がセットされていること、そし…

フォームでファイルをアップロード

php

フォームでファイルをアップロード 文字情報をフォーム送信するのなら$_POST['name']でOKだが ファイルをアップロードするにはformでenctype="multipart/form-data"を記述しないと そもそも送信できない。 そのほかにinput要素にもtype="file"とつけておく。 <form action="check.php" method="post" enctype="multipart/form-data"></form>…

フォームで画像を送信

PHP

テキストでなくファイルを送信する場合。 <form action="./prd_add_check.php" method="post" enctype="multipart/form-data" id="product"> enctype="multipart/form-data" と設定する事で テキスト文章以外のファイルを送信できる。</form>

『PDO』データベース接続クラスについて

PHP

PDOクラスを使うメリット データベース(以下DBと略)に接続する関数は以下3行で書いていました。 mysql_connect('サーバ名','ユーザ名','パス')or die(mysql_error()); mysql_select_db('データベース名'); mysql_query('文字コード'); これでも充分接続に…

変数と関数とクラス・オブジェクトについて

PHP

自分の中でまとまり切れてなかったので各名称とその意味について再確認。 コーヒーを例に説明します。 変数 変数はデータを収納する器。 ポット(変数)は硬水や軟水などの(データ)を保持する為のもの。 関数 データを決まった処理により加工する物。 ポッ…

ヒアドキュメントで定型文をもっと楽に書こう。

PHP

長ったらしいechoやprintの一行一行を簡単に記述する。 まず以下のコードを見てください。 PHP echo '<form action="thanks.php" method="post">'; echo '<input type="submit" onClick="history.back()" value="戻る">'."\n"; echo '<input type="submit" value="送信">'."\n"; echo '</form>'."\n"; フォームの送信ボタン部分です。 PHPのif文の判定で正しい値を入力されたら、先へ進む送信ボタンが表示さ…

PHPの関数など色々覚え書き

PHP

htmlspecialcharsとmysql_real_escape_stringの違い htmlspecialchars htmlspecialcharsはフォームから送られた変数の値や、DBやCSVから送られた値を プラウザ表示するときに中身の値を適切な状態にエスケープする時に使う。 mysql_real_escape_string mysql…

SESSIONとCOOKIEについて

PHP

変数は特定のキーワードやファンクションを格納し、同じ場所のページ内で使いまわしできる利点がある。この変数を別のページに使いまわす場合、formを使用して$_POSTで受け取りして、再度変数に格納しなおさなければならない。この手順は少しばかり面倒なの…

explode( string 区切り文字 , string 文字列 ,[ int 最大要素数 ] )

PHP

変数の中の文字列を区切り文字を指定することで分割・配列化する。最大要素数を指定することで、分割した文字列群の数を要素数にあわせることができる。 なお、その際に区切った文字列群の方が多い場合は要素数にあわせて最後の文字列に残り全ての分割文字列…

正規表現

PHP

正規表現とは幾つかの文字列を一定の形式、規則で表現する物である。 郵便番号を入力するとき通常ならば半角英数字で入力するけれど、 多くの場合はお問合せフォームで前述に名前欄を全角ひらがなで入力していて 郵便番号欄に入力する時に、そのまま全角のま…

フォーム内容チェック

php

フォームの値が適切でない場合や空欄の場合などの警告表示 7桁の郵便番号が5桁までしか入力されていない、名前の入力が空欄のまま、などなどそのままだとまずいので警告表示を出したい。 empty()で空欄フォームをチェック empty(変数)で変数の中身がからっ…

checkboxなどの複数回答の受信方法|part2

php

implode()で複数回答を受信する。 先日紹介した「foreach」で配列変数に入れた複数回答を並べる方法以外にも 「implode」を使い「foreach」と同じように複数の回答の値を表示できる。 implode( 連結文字 , 連結したい配列 )で配列要素を並べられる。 それで…

checkboxなどの複数回答の受信方法

PHP

input属性がcheckboxで複数回答を送信すると受信する側は... contact.php(送信側) <form action="contact_do.php" method="post"> <label><input type="checkbox" name="check" value="select01" checked="checked">select01</label> <label><input type="checkbox" name="check" value="select02">select02</label> <label></label></form>

RSSデータの取得

ブログやニュースサイトで発行しているRSSを取得しよう。 phpで標準搭載されたsimplexml_load_file関数を利用してRSSを読み込む。 item as $item){ if(++$i>5)break; $dc = $item->children('http://purl.org/dc/elements/1.1/'); $link = $item->link; //…

フォーム登録

PHP

入力フォームの基礎 contact.php(送信フォームのhtml) <form action="contact_do.php" id="form" method="post"> <p> <label for="Name" class="formTitle">お名前<span>個人名</span></label> <input type="text" class="text" name="Name"><em>例)田中&nbsp;仁</em> </p> 〜中略〜 </form> まずformタグ内の"action="に送信先のファイル名、"method="に送信方法(主…

配列

PHP

array関数(要素1,要素2,要素3,要素・・・)で配列を作る。 まず配列の変数名の中身にarray関数を使い複数の要素(データ)を収納する。 要素を表示する場合は以下の通りとなる '."\n"; print $name[1].'<br>'."\n"; print $name[2].'<br>'."\n"; ?> 出力結果 なんで…

文字列関数

PHP

round関数 round(数値、桁数) 第一引数の数値が基準値となり、第二引数に四捨五入したい桁数を指定できる。 第2引数の”1”が小数点第1位が繰り上がるので結果は。 出力結果:123.5 第2引数をマイナスや指定しなかったりすると... substr関数 substr(対象…