PHP(ぴーえいちぴー)

リンク集

メモ

serialize 値の保存可能な表現を生成する
serialize() は、valueの 保存可能なバイトストリーム表現を含む文字列を返します。 

型や構造を失わずにPHPの値を保存または渡す際に有用です。 
PHP4と5の共存
Running PHP 4 and PHP 5 Concurrently

配列全体をエスケープ(MySQL)

エスケープ済みの配列を返す場合

$sql_values = array_map(create_function( '$a', 'return mysql_real_escape_string($a);'),$values);

入力した配列の各要素をエスケープ

$return = array_walk(create_function( $values, '&$v,$k', '$v = mysql_real_escape_string($v);') );

自作ツール

PHP TOOL

URLエンコード・デコード
%とか含まれるアレを元に戻したり
パスワードジェネレーター
パスワードを考えるのがめんどい時に役立ちます
PHPマニュアル(chm)の文字化けを解消する
これいいね
GDライブラリにGIFを組み込む
公式で対応しました

PHPでMVC

  • Model
    • VO(Value Object)
      VOは、データそのものを表現するためのオブジェクトです。
      例えばユーザ情報を保持するためのクラスの定義は次のようになります。
      <?php
      class User {
        var $id;
        var $name;
        var $mail;
        var $password;
        var $birthday;
      
        // 各属性の set/get メソッド。省略
      }
      ?>
    • DAO(Data Access Object)
    • VOの集約用クラス
    • ロジッククラス(Controllerから直接呼び出されるメソッドを持つ)
      • result ロジッククラスの結果を示す
    • その他ユーティリティー系クラス
  • View
    Viewに関係が無いロジックは組み込まないようにしましょう。

TIPS

  • クラスの定義は使用前に行う。
    • 下記はエラーになる。
      $test = new test();
      class test {
          function test() {
          }
      }
    • こうする
      class test {
          function test() {
          }
       }
      $test = new test();
  • booleanへの変換
    • booleanに明示的に変換を行うには、キャスト (bool) または (boolean) を 使用します。
      しかし、演算子、関数、制御構造がboolean 型の引数を必要とする場合には、
      値は自動的に変換されるため、多くの 場合、キャストは不要です。
      型の相互変換 も参照下さい。 
    • booleanに変換する場合、次の値は FALSEとみなされます。
      • booleanの FALSE
      • integerの 0 (ゼ ロ)
      • floatの 0.0 (ゼロ)
      • 空の文字列、 および文字列の "0"
      • ゼロを要素とする 配列
      • ゼロを要素とする オブジェ クト
    • 特別な値 NULL (値がセット されていない変数を含む)
    • その他の値は全てTRUEとみなされます。 (全ての resourceを含みます。)
  • PATH
    • 実行されたphpファイルがCurrentディレクトリになるので相対PATHはそっから考える
  • PHPで可逆暗号の話。
    function f_encrypt($string){
        $key = CRYPTKEY; if($key===False){ return $string; }
        $command = "/bin/echo \"${string}\" | ".
                   "/usr/bin/openssl des-ede3 -e -base64  -k '${key}'";
        $crypted = exec($command);
        return $crypted;
    }
    function f_decrypt($string){
        $key = CRYPTKEY; if($key===False){ return $string; }
        $command = "/bin/echo \"${string}\" | ".
                   "/usr/bin/openssl des-ede3 -d -base64  -k '${key}'";
        $plain = exec($command);
        return $plain;
    }

気になる関数

  • 関数に関連する関数
    get_class
    func_get_args
    func_num_args
    func_get_arg
    get_class
    get_class_methods
    get_class_vars
  • POST GET関連
    urlencode()
    rawurlencode()
  • 配列関連(分割)
    join()
    explode()
    split
    preg_split
  • 文字コード関連
    mb_convert_encoding()
    mb_convert_kana()
  • 日付関連
    date()
    mktime()
    time()

関連ページ


Last-modified: 2016-07-10 (日) 02:00:29 (801d)