<?php
/**
* MySQLiクラスの拡張
*/
class MySQLiDB extends mysqli {
private $_host;
private $_user;
private $_pass;
private $_db;
private $_char;
private $_timeout;
public function __construct($host, $user, $pass, $db, $char, $timeout) {
parent::init();
// AUTOCOMMIT オフ
if (!parent::options(MYSQLI_INIT_COMMAND, "SET AUTOCOMMIT = 0")) {
die("Setting MYSQLI_INIT_COMMAND failed");
}
// 接続のタイムアウト 設定
if (!parent::options(MYSQLI_OPT_CONNECT_TIMEOUT, $timeout)) {
die("Setting MYSQLI_OPT_CONNECT_TIMEOUT failed");
}
// 接続
if (!parent::real_connect($host, $user, $pass, $db)) {
die("Connect Error (" . mysqli_connect_errno() . ") " . mysqli_connect_error());
}
// デフォルトのクライアント文字エンコーディング 設定
if (!parent::set_charset($char)) {
die("Error loading character set {$char}: %s\n" . $mysqli->error);
}
// ローカル変数に保存
$this->_host = $host;
$this->_user = $user;
$this->_pass = $pass;
$this->_db = $db;
$this->_char = $char;
$this->_timeout = $timeout;
}
}
なんでも屋さんの自称SEさんが、知らなかったことをメモ代わりに書いてます。
たまに関係のないことも書きますが、良かったら参考にどうぞ。
2020/11
なんでも屋さんだったSEさんは、転職しました。今は社内SEさんとして、自社システム開発してます。でも、一人なんだよね・・・
2021/8 もう少し自分で考えてよって人が増えました...いい歳なんだからさー、指示待ちやめてよねー
2023/11 転職してから早3年、仲間が4名になりました!
2024/10 この一年で貯金がかなり減りました・・・
2025/1 三十数年、毎日欠かさず吸ってきたタバコをやめました
2013-08-25
MySQLiクラスをラップする
2013-08-23
ファイル名やディレクトリ名にスペースを含むときに使える!chmodで再帰的にアクセス権を設定する
現在のディレクトリ以下のファイルとディレクトリに対して、再帰的にアクセス権を設定するには
とする。
とすることで、名前にスペースを含むファイルやディレクトリが存在しても、処理してくれる。
find . -type f -print0 | xargs -0 chmod 644 find . -type d -print0 | xargs -0 chmod 755
とする。
-print0 | xargs -0
とすることで、名前にスペースを含むファイルやディレクトリが存在しても、処理してくれる。
2013-08-21
mb_send_mail() するなら mb_convert_encoding() は不要
おれも勘違いしていたが、mb_send_mail()を使ってメールを送るとき、mb_convert_encoding()使って、ISO-2022-JPへ変換しなくていい。
具体的には、たったこれだけ。
これだけで、
件名は、mb_encode_mimeheader(mb_convert_encoding("件名", "ISO-2022-JP", "UTF-8"), "ISO-2022-JP") してくれるし
本文は、mb_convert_encoding("本文", "ISO-2022-JP", "UTF-8") してくれる。
ただ、Fromに日本語使いたいときだけは、自前で
ってやってから
って送ってあげる。
具体的には、たったこれだけ。
<?php
// 日本語だよって宣言して
mb_language('ja');
// UTF-8で組んでるなら、文字エンコードをUTF-8に合わせて
mb_internal_encoding("UTF-8");
// mb_send_mail()するだけ
mb_send_mail("dare@doko.koko", "メールの送信テスト", "これは、メールの送信テストです。");
これだけで、
件名は、mb_encode_mimeheader(mb_convert_encoding("件名", "ISO-2022-JP", "UTF-8"), "ISO-2022-JP") してくれるし
本文は、mb_convert_encoding("本文", "ISO-2022-JP", "UTF-8") してくれる。
ただ、Fromに日本語使いたいときだけは、自前で
$from = mb_encode_mimeheader(mb_convert_encoding("おれから", "ISO-2022-JP", "UTF-8"), "ISO-2022-JP")."<ore@doko.soko>";
ってやってから
mb_send_mail("dare@doko.koko", "メールの送信テスト", "これは、メールの送信テストです。", "From:".$from);
って送ってあげる。
登録:
コメント (Atom)
sftp専用ユーザー
sftp専用ユーザーはsshでもログインできる必要があるので、ftp専用ユーザーのように、-s /sbin/nologin としない。 # useradd sftpuser # passwd sftpuser New password: Retype new passwo...
-
本題に入る前に、まずは、sh/bash系のシェルで標準出力と標準エラー出力をリダイレクトする方法から。 現在使用中のシェルを確認するには、 # echo $SHELL とすれば確認できる。 その他、利用できるシェルを確認するには # cat /etc/shell...
-
Internet Explorer も、気がついてみたらFirefoxまでも、複数タブ・ウィンドウ間で同一セッションになってしまった。確か、Firefox 3.6のときは、ウィンドウが別だったらセッションも別になっていたと思ったのになぁ... で、同一セッションになって困るの...
-
おー、ほぼ一年ぶりの更新だ・・・ 普段、何気に設定していた cron なんですが、 「PATHは通っていないから、フルパス書いて」 「#!/bin/bash はお呪い」 っていう程度の認識しかなかった。 ので、一からお勉強。 まず、cron の シェル...