3_008-参照による代入

PHPとPostgreSQLを利用したWEBシステムの開発例を掲載していきます。腕時計 販売サイト my-watch.biz

● 3_008-参照による代入

 先のコードを使って参照による代入の例を示します。
 print_r($name); は少し邪魔なのでコメント・アウトしておきます。

<?php

/* このプログラムは演習用です。
コメントの練習です。    */

// ここから演習を開始します。

$name_1[] = 1;
$name_1[] = 2;
$name_1[] = 3;
$name_1[] = 4;
$name_1[] = 5;

$name_2[] = 1;
$name_2[] = 2;
$name_2[] = 3;
$name_2[] = 4;
$name_2[] = 5;

$name[] = $name_2;
$name[] = $name_1;

// print_r($name);
?>

 配列 $name を別の変数 $f_name に代入するとします。普通に代入を行う時は値がコピーされますが参照を使うと元の変数を参照するだけです。
 これには「&」を使います。これの効果は非常に値が大きい時に有効です。

<?php

/* このプログラムは演習用です。
コメントの練習です。    */

// ここから演習を開始します。

$name_1[] = 1;
$name_1[] = 2;
$name_1[] = 3;
$name_1[] = 4;
$name_1[] = 5;

$name_2[] = 1;
$name_2[] = 2;
$name_2[] = 3;
$name_2[] = 4;
$name_2[] = 5;

$name[] = $name_2;
$name[] = $name_1;

$f_name = &$name

// print_r($name); // 配列の中を調べる
?>

● 3_009-定数

 定数は一定の値です。プログラムで変更することはできません。

 これに関しては正規マニュアルで簡潔に紹介されているので、この項目に関しては下記を参照して下さい。
 第 13章定数
 自動的に定義される定数

● 3_010-組込関数

 関数というものがあります。言葉でいくと「動詞」のようなものです。
 変数 $kakaku に「10000」の数値を代入して、桁処理を行います。

<?php

/* このプログラムは演習用です。
コメントの練習です。
    */

// ここから演習を開始します。

$name_1[] = 1;
$name_1[] = 2;
$name_1[] = 3;
$name_1[] = 4;
$name_1[] = 5;

$name_2[] = 1;
$name_2[] = 2;
$name_2[] = 3;
$name_2[] = 4;
$name_2[] = 5;

$name[] = $name_2;
$name[] = $name_1;

$f_name = &$name; // 参照による代入

// print_r($name); // 配列の中を調べる

$kakaku = 10000; // 10000を代入

$kakaku_keta = number_format($kakaku); // 10000を桁処理

print $kakaku_keta;
?>

 「10,000」と桁が挿入されて出力されます。

 関数の形は 関数名(引数) となります。
 上の例で行くと、「number_format関数は引数の10000を受け取って処理した」となります。

 ドアを開けるという動作がありますが、カギを使ってドアを開ける。
 これを関数風に言うと「ドアを開ける関数は引数のカギを受け取って処理をした」になります。

 引数が必要無い場合もありますが、その場合()の中は空白になります。
 関数は非常に数が多いので代表的にものだけ覚えて、必要なものはその都度調べましょう。

 下記の正規マニュアルのトップに関数のリファレンスがあります、大雑把に見てもかなりあります。
 VI. 関数リファレンス


● 3_011-ユーザー定義関数

 先の組込関数は予め用意されているものですが、自分で作る事ができます。関数の基本の形は同じです。
 前の出力は邪魔なのでコメント・アウトします。下記のコードでは「20000」が出力されます。

<?php

/* このプログラムは演習用です。
コメントの練習です。
    */

// ここから演習を開始します。

$name_1[] = 1;
$name_1[] = 2;
$name_1[] = 3;
$name_1[] = 4;
$name_1[] = 5;

$name_2[] = 1;
$name_2[] = 2;
$name_2[] = 3;
$name_2[] = 4;
$name_2[] = 5;

$name[] = $name_2;
$name[] = $name_1;

$f_name = &$name; // 参照による代入

// print_r($name); // 配列の中を調べる

$kakaku = 10000; // 10000を代入

$kakaku_keta = number_format($kakaku); // 10000を桁処理

// print $kakaku_keta;


kakaku_keisan( $kakaku ); // 定義した関数を実行

function kakaku_keisan ( $kakaku ){ // 関数を定義
$kakaku_2 = $kakaku * 2;
print $kakaku_2;
}
?>

 まず緑の文字で表示しているのが関数を定義している部分です。
 定義のみで実行はしません。

 function でユーザー定義関数であることを宣言して、関数名を決め、引数を設定して(無い場合は空白)「{ }」の中に処理を書きます。

 赤字の一行でユーザー定義関数を実行します。

 ユーザー定義関数とは別にクラスで定義する方法があります、これは後で説明します。
 詳細については下記の正規マニュアルを参照して下さい。

 第 17章関数




戻る

Copyright (c) 2007 MSweb All Rights Reserved

腕時計 クロノグラフ(時計)のメンズ専門販売サイトカシオ G-SHOCK、Baby-G(腕時計)専門の通信販売サイトG-SHOCK、Baby-G専門通販サイト 運営ブログ

腕時計 女性専用 販売のladies-watch.biz腕時計 メンズ(男性)専門販売のmens-watch.biz