PHP で カナ変換

PHPメモです
カンを全角カタカナや半角カタカナなどに変換するには
mb_convert_kana() を使います
mb_convert_kana() は
任意の文字列を特定の表記(全角カタカナ、半角カタカナなど)に変換する
変換オプションには
変換する文字の種類や変換方法を文字列で指定する
文字エンコードを指定することで
変換する文字列の文字エンコードも指定できる
文字エンコードを省略すると
mbstring.internal_encoding の設定値で処理される
-------------------------------------------------------–
mb_convert_kana() の使い方
変換後文字列 = mb_convert_kana(文字列、変換オプション、文字列エンコード);
-------------------------------------------------------—-
mb_convert_kana() のオプション
r
全角英字 > 半角英字
R
半角英字 > 全角英字
n
全角数字 > 半角数字
N
半角数字 > 全角数字
a
全角英数字 >半角英数字
A
半角英数字 > 全角英数字
s
全角スペース > 半角スペース
S
半角スペース > 全角スペース
k
全角カタカナ > 半角カタカナ
K
半角カタカナ ≫全角カタカナ
h
全角ひらがな > 半角カタカナ
H
半角カタカナ > 全角ひらがな
c
全角カタカナ ≫全角ひらがな
C
全角ひらがな > 全角カタカナ
V
濁点付きの文字を1文字に変換
これは K H のオプションと併用する
--------------------------------------------------—
使用例として
$string =”てすと”;
echo “{$string} => mb_convert_kana($string,”C”);
とすると
C は全角ひらがな を 全角カタカナにするため
$string が
てすと から テスト に変換される

数値のフォーマット情報を取得する

PHPで通貨関連表記できそうなものがあったのでメモです
実行環境における数値のフォーマットに関する情報を調べるには
localeconv() を使う
localeconv() は
ローカルな数値および通貨フォーマット情報を格納した連想配列を返す
連想配列キーは以下のようになる
decimal_point
小数点文字
thousands_sep
1000ごとの区切り文字
grouping
数値集合を有す配列
int_curr_symbol
国債通貨記号
mon_deciamal_point
通貨用の小数点文字
currency_symbol
ローカル通貨記号
mon_thousands_sep
通貨用の1000ごとの区切り文字
mon_grouping
通貨集合を有する配列
positive_sign
正の値を表す記号
negarive_sign
負の値を表す記号
int_frac_digits
国債分割桁
frac_digits
ローカル分割桁

PHPで文字列の暗号化

PHPでは、文字列の暗号化ができます
忘れないうちにメモ
crypt() の暗号化アルゴリズム一覧
CRYPT_STD_DES
標準DES アルゴリズム
0~9
A~Z と a~z の文字列のみ指定可能
最初の8文字しか暗号化しないので注意
シードは2文字
CRYPT_EXT_DES
拡張DES アルゴリズム
_の後に4バイトの反復回数、4バイトのシード文字列を指定
0~9
A~Z と a~z の文字列のみ指定可能
シードは9文字
CRYPT_MD5 
MD5アルゴリズム
シードは $1$で始まる12文字
CRYPT_BROWFISH
BlowFish アルゴリズム
シードは$2a$ で始まる33文字
$2a$の後に2桁のコスト値、その後に$で囲んだシード22桁の
文字列を指定
0~9
A~Z と a~z の文字列のみ指定可能
CRYPT_SHA256
SHA256アルゴリズム
シードは$5$ で始まる文字列
$5$ の後に16桁のシード文字列を指定
シード文字列に round~回数$をるけることで
ハッシュループ回数も指定できる
0~9
A~Z と a~z の文字列のみ指定可能
CRYPT_SHA512
SHA512アルゴリズム
シードは$6$で始まる文字列
$6$の後に16桁のシード文字列を指定
0~9
A~Z と a~z の文字列のみ指定可能
シード文字列に round~回数$をるけることで
ハッシュループ回数も指定できる

is_array() について

PHPのめもです
配列かどうか調べるには
is_array() を使う
is_array() は、引数の変数の方が配列型であるなら、TRUE
そうでないなら FALSE を返す
is_array()
の使い方は
論理値 = is_array(変数);
sample では、ちょっとした三項演算子をまぜている
たとえば
echo “\$bool_var は”.((is_array_($bool_var))? “配列だよ” : “配列じゃねぇ”);
さて、これの解説
echo で、表示しているのが
\$bool_var は
というところ、
\がついているのは $の意味を無効化するため
無効化しないと、変数として作動してしまう
.(処理);
で続いているところの解説
. はPHPではその後に文字を書くことを意味している
つまり、その後の処理内容がかかれる
もし、is_array() の結果が配列なら
\$bool_var は配列だよ
となり、違うなら
\$bool_var は配列じゃねぇ
となる
あと、三項演算子が使われているけど、これを応用すると
いろいろとできる
今回の場合、is_array() の結果を三項演算子で使っている
まず、is_array() の実行結果が三項演算子の処理の条件にしていて
True なら、(配列の場合)
配列だよ
が実行され
FALSE なら(配列以外の場合)
配列じゃねぇ
が実行される

var_dump() について

PHP逆引き大全 516の極意
をみながらPHPの勉強をしています

今回、途中で var_dump() が出てきましたが
わかりにくかったので、検索
どうやら
引数として指定した変数の内容や命令の返値を画面上に出力するもの
というものらしいです
参考サイトは
PHPを学ぶ時、最初に憶えて欲しいvar_dump
です

WEB 2.0 というもの

最近は、サーバー構築関連、そしてLinux の基本、
シェルスクリプト、PHP MySQL CSS といろいろと勉強することが多い日々です
そんな中、APIを使って、公開WEBサーバで何か
サービスを作ってみたいと思っていましたが
検索するにもキーワードがわからず、いろいろと悩みました
そんな途中に、過去の雑誌を整理していたときに
Linuxサーバー「超」入門 (日経BPパソコンベストムック)
の広告を発見しました
もっとも興味があったのが、
日経BP書店の書籍の目次の紹介
目次にある
【第2章】 Rubyで作るWeb2.0サイト
   《 Part1 》 Amazon APIで作る蔵書管理サイト
   《 Part2 》 Google Mapsでマッシュアップ
   《 Part3 》 Googleカレンダーにテレビ番組表を張り付ける
というところでした
書籍で購入しようか考えましたが、
情報がすでに古くなっていることも考え、検索した結果
Web2.0サイトを自作する—目次
に同様の記事を発見しました
ただし、すべての内容を閲覧するには
ITProの無料会員にならないと閲覧はできませんが…
もう少し情報が欲しかったので
PHP WEB 2.0 サイト で検索した結果
PHPとAPIでマッシュアップサイトを作ろう!
に関連する記事が出てきました
どうやら、私のやりたいことは、このページにある
Mash up(マッシュアップ)
というものになるようです
他サイトが公開しているAPIなどを組み合わせて、独自のコンテンツを開発すること
ということで、様々なAPIが公開されている現在では
これを使い、いろいろと作成できそうです
マッシュアップ関連でいろいろと検索してみた結果
いまさら聞けない「マッシュアップ」超入門

ZAPA先生のマッシュアップ講座の一覧
にいろいろと詳しく載っていました

Windows7 starter でPHP

前回購入したWindows7 starter にPHP開発環境を
インストールしてみました

参考サイトは
Windows7にApacheとPHPをインストール
です
ただ、私の場合、PHP のインストールするバージョンを
このサイトどおりに
php-5.2.12-Win32.zip
ではなく、
php-5.2.14-Win32.zip
にしたため、これが後々面倒になりました
コマンドプロンプトを開いて
php -v
を実行すると
zlib.dll がありません
というエラーがでてしまいます
このため
zlib.dllがありません
を参考にして
pre-builtを落としてきて、
dll32ディレクトリに中にあるzlibwapi.dllを
phpディレクトリにコピーしてzlib.dll
にすると、このエラーがなくなりました
現在、いろいろなサイトをみながら

で基礎的な構文を勉強し

で応用をしながら勉強中です
今回は、この他にも、java tomcat6 Eclipse をインストールしてあります
Eclipse などの java 関連は
まずは、JDK(J2SDK)をインストールしてHelloWorldを動かそう
に詳しく画像入りで載っています
ちなみに、このサイトを運営しているサーチマンさんの
講習ですが、かなりわかりやすいので、かなりおすすめです

PHP の勉強

Web サーバーを構築し、FON でいろいろなところで
アクセスできる便利システムを作りたいので、PHPを勉強中
参考になりそうなものは、書籍、サイトをとわず勉強に活用
現在、買ってみた本として、参考になりそうなのは



の2冊です
MySQL と組み合わせて、PHP を使うと
かなりおもしろいものができそうです
いま、流行中の Twitter なども組み込んでいければ
と思っています
ちなみに、Twitter の API も本で出ています

スーパーグローバル変数

今日も頑張って PHP の勉強を続行です
基本的にはPHPは HTMLにちかいような感じです
初心者用PHP入門
の入力フォーム作成のところで、すこし気になったのが
スーパーグローバル変数という言葉です
さっそくGoogle で検索してみました
スーパーグローバル変数によれば
どうやらセキュリティの関係上こういうものがあるようです

PHP プログラミングの勉強 3

PHP関連についてもう少し調べてみました
初心者用PHP入門
を参考に、もう少し深く勉強してみようと思います
ちなみに、このサイトでは
WIndows 環境での PHP開発環境の作り方がのっています
私の場合、Virtual Box を使って
Webサーバー構築(Apache)
を参考に Linux で開発環境を導入しました