忍者ブログ
忘れない為のお勉強思い出し日記
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

<?php
//半角英字チェック
$str = "12345";
if(!ereg("^[a-z]+$",$str)){
        print $str."は半角英字で入力して下さい。\n";
}
//半角数字チェック
$str = "aiueo";
if(!ereg("^[0-9]+$",$str)){
        print $str."は半角数字で入力して下さい。\n";
}
//半角英数字チェック
$str = "AIUEO";
if(!ereg("^[0-9a-z]+$",$str)){
        print $str."は半角英数字で入力して下さい。\n";
}
##カラー表記チェック
$str = "#hoge";
if(!ereg("^#[0-9a-zA-Z]{6}$",$str)){
        print $str."は#xxxxxxで構成される16進数カラー表記で入力して下さい。\n";
}
##空文字チェック
$str = "";
if( (empty($str)) or (strlen($str) == 0) ){
        print "未入力です。\n";
}
##長さチェック
$str = "aiueo";
$num = 4;
if(strlen($str) > $num){
        print $str."は{$num}文字以上で入力されています。\n";
}
##マルチバイト長さチェック
$str = "あいうえお";
$num = 4;
if(mb_strlen($str) > $num){
        print $str."は{$num}文字以上で入力されています。\n";
}
##スペースチェック
$str = " ";
if(ereg("^( | |\t)+$",$str)){
        print "スペースのみで入力されています。Ver.1\n";
}
##スペース&改行チェック
if(preg_match("/^(\s| )+$/",$str)){
        print "スペースのみで入力されています。Ver.2\n";
}
##郵便番号チェック
$str = "000-aaaa";
if(!ereg("^[0-9]{3}-[0-9]{4}$",$str)){
        print $str."は正しい郵便番号ではありません。Ver.1\n";
}
if(!preg_match("/^\d{3}-\d{4}$/",$str)){
        print $str."は正しい郵便番号ではありません。Ver.2\n";
}
##携帯電話番号チェック
$str = "000-0000-aaaa";
if(!preg_match("/^\d{3}-?\d{4}-?\d{4}$/",$str)){
        print $str."は正しい携帯電話番号ではありません。\n";
}
##URLチェック
$str = "http://hogehoge";
if(!ereg("^(http|https):\/\/([-_.!~*\'()a-zA-Z0-9;\/?:\@&=+\$,%#]+)\.([-_.!~*\'()a-zA-Z0-9;\/?:\@&=+\$,%#]+)$",$str)){
        print $str."は正しいURLではありません。\n";
}
##メールアドレスチェック
$str = "hoge@hogehoge";
if(!preg_match("/^[0-9a-zA-Z_.-]+@[0-9a-zA-Z_.-]+\.[0-9a-zA-Z_.-]+$/",$str)){
        print $str."は正しいメールアドレスではありません。\n";
}
?>

PR

PHP表記

<?php

?>

<script language="php">

</script>

上記の表記はどちらでも可能
------------------------------
参照渡し

<?php
$var1 = "hoge";
$var2 =& $var1;
$var1 = "hogehoge";
print $var2;
?>

出力結果
hogehoge
-----------------------------
可変変数

<?php
$a = "hoge";
$$a = "hogehoge";
print $$a;
print $hoge;
print "${$a}";
?>

出力結果
$$a     hogehoge
$hoge   hogehoge
${$a}   hogehoge
------------------------------
関数のパラメータを配列に返す

<?php
function HogeFunc($str,$int){
 $hoge_array = func_get_args();
 return $hoge_array;
}
$hoge_array = HogeFunc("hoge",100);
print_r($hoge_array);
?>

出力結果
Array
(
    [0] => hoge
    [1] => 100
)
------------------------------
break n
引数[n]が省略された場合には1として
最も内側のループから脱出します。

<?php
for($i=0; $i<10; $i++){
        for($a=0; $a<10; $a++){
                if($a == 5){
                        $flag = "ok";
                        break 2;
                }
        }
        if($flag == "ok"){
                exit("$flag");
        }
}
?>

出力結果
$flagであるokは表示されない
------------------------------
関数返り値

<?php
function MyFunc(){
        $var_1 = array("あいうえお","かきくけこ");
        $var_2 = array("no"=>"1","name"=>"名前");
        return array($var_1,$var_2);
}
list($str,$data) = MyFunc();
$array = MyFunc();
print_r($str);
print_r($data);
print_r($array);
?>

出力結果
[$str]の結果
Array
(
    [0] => あいうえお
    [1] => かきくけこ
)
[$data]の結果
Array
(
    [no] => 1
    [name] => 名前
)
[$array]の結果
Array
(
    [0] => Array
        (
            [0] => あいうえお
            [1] => かきくけこ
        )

    [1] => Array
        (
            [no] => 1
            [name] => 名前
        )

)
------------------------------
再帰的(recursive)

この関数ではstaticを使用している為、関数を呼び出されるたびに
$cntをインクリメントする。

<?php
function Recursive(){
        static $cnt = 1;
        print "$cnt\n";
        $cnt++;
        if($cnt == 5){
                print "$cnt\n";
                $str = "終了";
                return $str;
        }
        if($cnt <= 10){
                $str = Recursive();
                return $str;
        }
}
$string = Recursive();
print $string;
?>

出力結果
1
2
3
4
5
終了
------------------------------
例外処理

<?php
class FilesException extends Exception {
        protected $time;
        public function __construct($msg,$code){
  parent::__construct($msg,$code);
                $this->time = time();
        }
        public function __toString(){
                return "例外クラス ".__CLASS__.":{$this->message}:{$this->code}\n";
        }
        public function getTime(){
                return $this->time;
        }
}

class Files {
        public function __construct($file){
                if(!file_exists($file)){
   //ファイルが存在しなければ例外に投げる
                        throw new FileException("ファイル $file が存在しません。",3);
                }
        }
}

try{
        $obj = new Files("hoge.txt");
        print "例外後の処理\n";
}catch(FilesException $e){
 //例外の発生したタイムを表示
        print "例外時間:{$e->getTime()}\n";
 //print を呼び出している為、toStringが表示される
 print $e;

}catch(Exception $e){
        print "例外:{$e->getMessage()}:{$e->getCode()}\n";
}
?>

出力結果
例外時間:xxxxxxxxxx(time)
例外クラス FilesException:ファイル hoge.txt が存在しません。:3

session.save_path = /tmp

セッションデータを保存しておくディレクトリ。
------------------------------
session.cookie_lifetime = 0

セッションが使用するクッキーの有効期限を指定する。
デフォルトで、0(単位:秒)
ブラウザを閉じるとクッキーは無効となる。
------------------------------
session.use_cookies = 1

セッションIDを保存する際に、クッキーを使用するかどうかを指定する。
(1:使用する  0:使用しない)デフォルトで、1
------------------------------
session.use_trans_sid  =  1

URLを示すタグに、セッションIDを付加をするかどうかを指定する。
0:付加しない  1:付加する(デフォルトは、0)
session.use_cookies = 1 の場合、クッキーが利用可能ならば付加されない。
クッキーが利用不可ならば、自動的にセッションIDがURLに付加される。

クッキーが無効の場合自動的に、
URLにセッションIDが付されるようになる。
------------------------------
session.gc_maxlifetime = 1440

セッションIDが破棄の対象となるまでの時間を指定する。
デフォルトは、1440(単位:秒)(24分)
最終のアクセスから1440秒を過ぎたものが破棄の対象となる。
------------------------------
session.gc_probability = 1
session.gc_divisor = 100

セッションIDが破棄の対象となるタイミングは、
各ファイルのタイムスタンプが、現在時刻よりも、session.gc_divisor で指定した
時間以上に古いものとなった時点。
但し、破棄の対象となるだけで、実際に破棄(削除)されるタイミングは、
ガーベジコレクション(ゴミ処理)が実行された時。
これは、session.gc_probability で指定した確率で実行される。

ガーベージコレクションにより、無効となったセッションIDの破棄が
行なわれる確率を指定する。
デフォルトで、1/100 session_start()のコール100回につき1回、
無効となったセッションIDの破棄が行なわれる。
1/1に設定すれば、session_start()コールの度に、無効となった
セションIDの破棄が行なわれるようになる。

yumコマンドで以下をインストールする


php     php-mbstring     php-mysql     php-pdo     php-pear     php-gd

pear::DBを使う場合
パッケージのインストール
pear install DB
でインストール

------------------------------

HTML_QuickFormを使う場合
パッケージのインストール
pear install HTML_Common
pear install HTML_QuickForm
でインストール

------------------------------

Authを使う場合
パッケージのインストール
pear install Auth
でインストール

------------------------------

Smartyを使う場合
パッケージ配布先の追加
pear channel-discover pearified.com
チャネル一覧の確認
pear list-channels
パッケージのインストール
pear install pearified/Smarty
でインストール
使用方法
require('Pearified/Smarty/Smarty.class.php');
$smarty = new Smarty();
で使用可能



忍者ブログ [PR]
カレンダー
05 2026/06 07
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
フリーエリア
最新コメント
[11/18 DSLR-A900]
[12/04 cnanogetde]
[06/25 QzLNP]
[06/25 Jarmj]
[06/25 wncwh]
最新記事
最新トラックバック
プロフィール
性別:
男性
バーコード
ブログ内検索