タグ

ブックマーク / elf.hatenablog.jp (8)

  • これも惜しいけどダウト - elf's blog

    ただし、ハードコードしている時には気を付けようぜ。mb_convert_encoding()やmb_ereg()などを使う時には、文字列をスクリプトの文字コードからinternal_encoding に変換してから渡してやる必要がある。要するにひと手間かかる場合もあるということ。 mb_convert_encoding()は入出力ともに文字エンコードの指定ができるよ.マニュアル見てますよね? mb_ereg()もmb_regex_encoding()でmbstring.internal_encodingと独立できます.これもマニュアルに書いている. #しいていうとmbstring.internal_encodingと連動するには条件があるため,両方とも常にしておくように考えるとより簡潔だと思う PHP: mb_convert_encoding - Manual PHP: mb_ereg -

    これも惜しいけどダウト - elf's blog
  • mb_convert_encodingいらないよ - elf's blog

    mb_encode_mimeheader()の中で同等の処理をするから. ソースみるべし. mb_convert_encodingで文字コードを変更して、 mb_encode_mimeheaderで、メールで使える形式にエンコードします。

    mb_convert_encodingいらないよ - elf's blog
  • よくきたはてダ - netstatでポートを空けているプログラムを知る

    ただnetstat -lnだけだとどのプログラムからポート番号を開けているのかわからないので、それを確認するために「lsof -i」を実行します。 私はnetstatのオプションは死んだおばあちゃんから-lanputと教わりました. というかこの画面を開発するときにこのオプション群に決定してそのまま現在に至るというだけですが. # netstat -lanput Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:741 0.0.0.0:* LISTEN 1831/rpc.statd tcp 0 0 127.0.0.1:199 0.0.0.0:* LISTEN

    よくきたはてダ - netstatでポートを空けているプログラムを知る
  • 第2回 PHPプログラミングの基礎を学ぼう レビュー - elf's blog

    hiro_yさんから第2回がヤバイというコメントがあったので見てみた. 連載では、エラー処理に「die("メッセージ")」を使用します。die()は引数に指定されたメッセージを表示して、それ以降の処理を中断します。ちなみに、exit()を使用すれば、メッセージを表示せずに処理を終了できます。 die()はexit()の別名なのでこの説明は語弊があるんじゃないでしょうか? マニュアルによると die("メッセージ");exit("メッセージ");は同じ意味になるようです. 注:ソースからインストールした場合 は、/usr/local/bin/php -l sample.php この表記ですが,個人的にはこういう場合などで語弊がある表記なので使わないようにしています. より正確には「configure時に--prefixで/usr/local以外を指定した場合〜」などになると思います. この

    第2回 PHPプログラミングの基礎を学ぼう レビュー - elf's blog
  • 第3回 サンプルで理解! フォームデータの受け渡し レビュー - elf's blog

    続けて. 「$ファイルポインタ」ってなんですか(笑 って思ってマニュアルを検索してみると… 'r' 読み込みのみでオープンします。ファイルポインタをファイルの 先頭に置きます。 みたいな表記は見つかりました.これのことなら「ファイルポインタ」はファイルの読み書き位置(クラシカルな表現で? シーク位置)になるんじゃないかと思います. fopenの返り値は「リソース」です.ふつーにこのサンプルの場合,$fileでいいんじゃないんでしょうか? あと前後しますけど/tmpにファイルを置くのは辞めましょうよ.いつかファイル消えちゃうよ? ちなみに、PHP5では文字列のファイルへの書き出しfopen()、fputs()、fclose()を「file_put_contents()」で、ファイルの内容を文字列として読み込むfopen()、fgets()、fclose()を「file_get_content

    第3回 サンプルで理解! フォームデータの受け渡し レビュー - elf's blog
  • やっちゃいけない事例集 - elf's blog

    http://blogs.yahoo.co.jp/nob_ll/45477291.html ファイル関数でリモートファイルのアクセスはいまどきご法度 せめてHTTP_Requestを使いましょう. mbstringで入力も自演コードの指定にautoはご法度 mbstringの設定を明示して説明できないサイトはえてしてmbstringの挙動が理解できないのでautoを使っている場合が多い ちゃんとHTTPレスポンスヘッダー,あるいはHTMLならmetaのcharset指定を見て適切に変換するべきでしょう 最終的にどうしようもなくてばくちでauto変換は100歩譲ってありかもしれない 自分が期待した環境でないPHPの動作環境,かつそれを変更できない人はやっちゃいけない事例として読むといいでしょう.

    やっちゃいけない事例集 - elf's blog
  • 惜しいが間違っている - elf's blog

    惜しいけど間違っている点がいくつか. ●default_charsetはデフォルトの文字コードのことではない。 非常に誤解しやすい内容。 default_charsetというパラメータはご存じの人も多いと思う。 それに大抵の初心者にはこれを設定するように書いてあるが、 むしろ逆である。 default_charsetとは 出力時にHTTPヘッダとして送信する文字コード名 のこと。 これを指定しておくと以下のコードが自動で出力される。 default_mimetype = 'text/html'で default_charset = 'utf-8'の場合 header('Content-Type: text/html; charset:utf-8'); default_charsetは関係ない.もし未指定なら単に Content-Type: text/htmlが出力されます. これだとコン

    惜しいが間違っている - elf's blog
  • PHPで符号付き整数の上限スレスレの挙動 - elf's blog

    覚えておくといつか役立つかも.気にしないで良いことがほとんどだけど(苦笑 $ php -r 'var_dump(2147483647);' int(2147483647) $ php -r 'var_dump(2147483647+0);' int(2147483647) $ php -r 'var_dump(2147483647+1);' float(2147483648) $ php -r 'var_dump(2147483647+1-1);' float(2147483647) PHPの場合,整数をオーバーフローしそうになると浮動小数点に自動的に切り替わります. 昔少しだけ真面目に調べたので興味がある人はどうぞ. PHPの中を追いかける(変数値の解析など) - よくきたblog

    PHPで符号付き整数の上限スレスレの挙動 - elf's blog
  • 1