* PHP: Hypertext Preprocessor [#k50e5340]

** リンク [#y73485c3]

http://www.php.net/
- http://jp2.php.net/ (日本のミラーサイト)

- 日本PHPユーザー会 (Japan PHP User Group)
-- http://www.php.gr.jp/

- [[PHP: PHP マニュアル - Manual:http://www.php.net/manual/ja/index.php]]
- [[PHP: 変数・データ型関連 - Manual:http://www.php.net/manual/ja/refs.basic.vartype.php]]
- [[PHP: 文字列 - Manual:http://www.php.net/manual/ja/book.strings.php]]
- [[PHP: 日付および時刻関連 - Manual:http://www.php.net/manual/ja/refs.calendar.php]]
- [[PHP: PDO - Manual:http://php.net/manual/ja/book.pdo.php]]
- [[PHP: GD - Manual:http://www.php.net/manual/ja/book.image.php]]

- [[PHPスクリプト講座:Home -- そふぃのphp入門:http://nyx.pu1.net/]]

- [[JpGraph]] : グラフ描画ライブラリ
- [[PHPで何かを作る! ファイルをダウンロードさせる:http://php.thm.jp/index.php?know=download]]


** 抜書き [#w870f183]

 print_r(変数[,フラグ])
 var_dump(変数名,...);

 foreach(配列 as 変数){}
 isset(変数, ...)
 is_array(変数)
 is_null(変数)
 empty(変数) "","0",NULLで真
 
 is_a(オブジェクト、クラス)

 __CLASS__  現在のクラス名
 __METHOD__ 現在のメソッド
 __FILE__   現在のファイル

 fopen(ファイル名、モード、[パス検索 [、リソース]])
 fclose(ファイルリソース)
 popen/pclose
 fgets(ファイルリソース);  1行読み込み
 fputs
 fwrite
 fflush

 file_get_contents(ファイル名);   ファイル全体の内容を文字列で返す
 file_put_contents(ファイル名、文字列); ファイルに書き込み
 file(ファイル名);  ファイルの内容を行の配列で返す
 
 copy(コピー元ファイル名、コピー先ファイル名)
 unlink(ファイル名)
 rename(元ファイル名、変更後ファイル名)

 file_exists(ファイル名)
 is_dir(ファイル名)
 is_file(ファイル名);
 is_readable(ファイル名);
 is_writable(ファイル名);
 filesize(ファイル名);

 stat(ファイル名)
 filectime(ファイル名)
 filemtime(ファイル名)
 fileatime(ファイル名)
 touch(ファイル名[,更新時刻[,アクセス自国]])

 basename(パス)
 dirname(パス)
 pathinfo(パス) dirname,basename,extensionの配列
 glob(パターン)
 realpath(パス)
 getcwd()
 chdir(ディレクトリ)

 array_merge(配列1, 配列2, ...)
 implode(連結文字、配列)   配列を文字列として結合
 join(連結文字、配列)      implodeとおなじ
 count(配列)  配列の要素数		  
 sizeof(配列) 配列の要素数
 array_search(検索値、配列) 配列の要素の検索、キーを返す、見つからなければfalse
 array_flip(配列)  キーと値を逆にした配列を返す
 array_values(配列) 値の配列
 array_keys(配列)   キーの配列
 array_pop(配列)
 array_push(配列、値、...)
 array_shift(配列)
 array_unshift(配列、値, ...)
 array_reverse(配列)
 natsort(配列)   natural sort
 natcasesort(配列)

 trim(文字列)  前後の空白を削除
 strlen(文字列)
 str_pat(文字列、長さ、追加文字)  指定した長さになるように文字を追加
 number_format(数値)  3桁毎に(,)を追加
 strpos(文字列、検索文字列[、オフセット])
 strrpos(文字列、検索文字列)
 substr(文字列、開始位置[,長さ])

 printf/sprintf/vsprintf
 explode(区切り文字、文字列)    区切り文字で文字列を分割
 split(区切り正規表現、文字列)  正規表現で文字列を分割
 spliti(区切り正規表現、文字列) 大文字/小文字を無視

 parse_url(URL)  URLをscheme,host,pathに分割
 parse_str(クエリ文字列,保存先配列)

 eval(PHPコード)

 mb_internal_encoding()
 mb_internal_encoding('UTF-8');

 ereg(正規表現、文字列[、結果格納配列])  正規表現との一致テスト
 eregi(正規表現、文字列[、結果格納配列]) 大文字/小文字を無視
 ereg_replace(正規表現、置換文字列、文字列)
 eregi_replace(正規表現、置換文字列、文字列)
 preg_match(正規表現、文字列[、結果格納配列])  perlの正規表現との一致テスト
 preg_replace(正規表現、置換文字列、文字列)

 bin2hex(データ) データを16進表記に変換
 htmlentities(文字列)
 html_entity_decode(文字列)
 nl2br(文字列) 改行を<br/>に変換
 urlencode(文字列)
 urldecode(文字列)

 date(フォーマット[,タイムスタンプ])
 date('Y/m/d H:i:s T');
 strftime(フォーマット、タイムスタンプ)
 gmdate(フォーマット[,タイムスタンプ])
 getdate(タイムスタンプ) 年月日を配列に返す
 checkdate(月、日、年)
 time()
 mktime(時、分、秒、月、日、年)
 strtotime(文字列)

 getimagesize(ファイル名) 画像ファイルの情報を配列で返す[幅、高さ、...]
 
 $db = pg_pconnect('host=localhost user=someone dbname=test');
 $rows = pg_query($db, "select  ... ");
 while($row = pg_fetch_array($rows)){}
 pg_close($db);

 pg_insert($pg,テーブル名、データ配列);
 pg_select($pg, テーブル名、抽出条件);
 pg_delete($pg,テーブル名、削除条件);
 pg_update($pg, テーブル、データ、更新条件);

 PDO(データベース抽象化モジュール)
 try {
   $dbh = new PDO('pgsql:dbhost=localhost dbname=mydb user=test');
   $dbh->exec("insert into test (a,b) values(1,'xys');");
   $sth = $dbh->query('select * from test;');
   $rows = $sth->fetchAll();
   print_r($rows);
 } catch (PDOException $e){
   echo 'PDO Error: ' . $e->getMessage();
 }

 syslog(LOG_ERR, メッセージ)
 syslog(LOG_DEBUG, メッセージ)
 assert(式)
 assert_options(ASSERT_ACTIVE, FALSE);  assertを無効にする
 error_reporting(E_ALL|E_STRICT);

 __construct()  コンストラクタ
 __toString()

** 変数 [#n5e5fb19]

 $_GET
 $_POST
 $_COOKIE
 $_SERVER
 $_FILES
 $_REQUEST

** 日本語のメールを送る [#m3c6ec67]

- [[UTF-8で作成したフォームをsend_mailすると文字化け PHP5 - PHPプロ!Q&A掲示板:http://www.phppro.jp/qa/636]]

 <?php
 mb_internal_encoding("UTF-8");
 $title = '日本語メール';
 $etitle = mb_encode_mimeheader($title,"JIS","B");
 $contents = 'メール本文';
 $contents = mb_convert_encoding($contents,'JIS');
 $r = mail('foo@someware.somenet',$etitle,$contents,"From:h_nari@kumamoto-u.ac.j$
 var_dump($r);
 ?>

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS