アットウィキロゴ

PHP PROGRAMING

解説

  • コメントは「 // 」「#」「/* */」
  • 変数の命名規則:大文字と小文字を区別する。先頭に数字を付けることができない。
  • 関数名の命名規則:大文字と小文字を区別しない。大文字で書くことが多い。
  • 変数のミスタイプをエラーとして何も表示しない。定義していない変数を自動的に生成するためでデバックが大変になる。
型名 型名e 備考
論理値 boolean $test = true; 大文字と小文字を区別しない(trueとTRUEは同じ)
整数 integer $test = 2000; 範囲 -2,147,483,645 ~ 2,147,483,645
浮動小数点数 float $test = 3.14159265; 14桁の数値を扱える
文字列 string $test = "テストです。"; 長さに制限がない。「"」か「'」で囲む。数値であっても文字列変数となる。
  • FALSEの定義
booleanの FALSE 
integerの 0
floatの 0.0
空の文字列、 および文字列の "0" 
ゼロを要素とする配列 
ゼロを要素とするオブジェクト 
NULL
グローバル変数は、スクリプト内どこからでも参照可能。ただし、関数内からグローバル関数を参照するには、
global グローバル変数名
と明記する。グローバル変数とローカル変数が同一だった場合はローカル変数が参照される。
関数内でグローバル変数名を変更した場合、変数内容が変わる。

ユーザ定義関数

<?php
        define("タイトル","【引数の値渡し】");

function CALCULATION($a){
        $a = ($a + 2) * $a;
        return $a;
}

$b = 5;
print(タイトル."<br>\n");
print("\$bの初期値は、".$b."です<br>\n");
$c = CALCULATION($b);
print("関数に渡された \$b の値は".$b."です<br>\n");
print("関数の実行結果は".$c."です。<br>\n");
?>
  • define定義をprint関数で表示させる場合、定義名を"や'を付けずに書く。
  • <br>\nは、ダブルクォーテーションで囲まれているのでHTMLが解釈。\nはソースコードを分かりやすくするため。
出力結果
[root@water0 www]# php 1_user_define.php
【引数の値渡し】<br>
$bの初期値は、5です<br>
関数に渡された $b の値は5です<br>
関数の実行結果は35です。<br>

引数の参照引渡し(リファレンス渡し)

function CALCULATION(&$a){
&を付けることで、引数として渡された変数自体の値を変化。アドレスをコピーするイメージ?

引数のデフォルト値

「 function CALCULATION($a = 5){ 」は、「  $c = CALCULATION(); 」だった場合に働く。

list関数

複数の値を一度に戻り値として返すことができる。
<?php
function CALCULATION(){
        return array ( 0, 1, 2 );
}

list ( $zero, $one, $two ) = CALCULATION();
print ("$zero,$one,$two");
?>
出力結果
[root@water0 www]# php 2_list_function.php
0,1,2

if文

<?php
$a = 14;

if( $a <= 9 ){
        echo "\$aは9以下の数字です。<br>\n";
}elseif( $a > 10 ){
        echo "\$aは11以上の数字です。<br>\n";
}else{
        echo "\$aは10の数字です。<br>\n";
}
?>

for文

<?php
for ( $i=10; $i>0; $i--){
        echo "Counter is $i<br>\n";
}
?>

while文

  • 条件がtrue(真)の間、処理を繰り返す場合に使う。
<?php
$a = 1;

while ( 1 ){
        if ( $a == 10 ){
                break;
        }else{
                echo "not equal 10<br>\n";
                $a++;
        }
}
?>

do~while文

<?php
$a = 1;

do{
        if ( $a == 5 ){ continue; }
        if ( $a == 8 ){ break; }
        print ("\$aの結果:".$a."<br>\n");
}while( $a++ < 10 )
?>

switch~case文

<?php
$i = 5;

switch($i){
        case 0:
                echo "0<br>\n";
                break;
        case 1;
                echo "1<br>\n";
                break;
        default;
                echo "other<br>\n";
}
?>

条件式について学ぶ

条件式 解説 活用 参考
if (strpos($a,'a') !== false ){ $aに'a'という文字列が存在するなら実行 検索 http://php.net/manual/ja/function.strpos.php

関数について学ぶ

番号 条件式 解説 活用 参考
1 $c = substr($a, $i, strlen('key')) substr関数より$aの検索文字列から$i番目の位置からstrlenの"key"のバイト数分を$cに代入する。 - http://php.net/manual/ja/function.substr.php
2 include_once("todofuken.txt"); todofuken.txtを読み込む - -
3 while (list($key, $val) = each($fruit)) { $fruit配列を読み出し、list関数へ現在のキーと値のペアを返して、ポインタを進める http://php.net/manual/ja/function.each.php
  • 1.substr
$a = "abcdefghijklmn";
$i = 2;
$c = substr($a, $i, strlen('key'));
echo $c;
result
[root@water0 www]# php 9_substr_function.php
cde
  • 3.next,current,prev,end,reset,forach,each
$fruit = array(
        'a' => 'apple',
        'b' => 'banana',
        'c' => 'cranberry'
);
$result = next($fruit);         echo "next:$result\n";
$result = current($fruit);      echo "current:$result\n";
$result = prev($fruit);         echo "prev:$result\n";
$result = end($fruit);          echo "end:$result\n";
$result = reset($fruit);        echo "reset:$result\n";

while( list( $key, $value ) = each( $fruit ) ){
        echo "$key => $value\n";
}

foreach( $fruit as $key => $value ){
        echo "$key => $value\n";
}
  • next関数:要素を返す前に内部配列ポインタをひとつ先に進めます。進めた後に要素を返す。
  • current関数:現在のポインタをそのままで要素を返す。
  • prev関数:要素を返す前に内部配列ポインタをひとつ後ろに戻します。戻した後に要素を返す。
  • end関数:ポインタを配列の最後に持っていく。その後、要素を返す。
  • reset関数:ポインタを配列の最初に持っていく。その後、要素を返す。
  • each関数:キーと要素を返す。その後ポインタを1進める。
  • whileとforeachの処理は同等の結果を返す。要素のみ取得も可能。
result
next:banana
current:banana
prev:apple
end:cranberry
reset:apple
a => apple
b => banana
c => cranberry
a => apple
b => banana
c => cranberry
最終更新:2010年05月11日 18:29
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。