システム・プログラム関連のメモや最新技術についてのメモを掲載

Zend Mailで文字化け対策

2月 13th, 2010 admin Posted in PHP No Comments »

Zend Mailに限った話ではないですが、昨日、Zend Mailでメール配信
プログラムを書いていて文字化けが起きたので、解決策をメモ。

$charset   = 'ISO-2022-JP';
$from_name = mb_encode_mimeheader('送信者名', $charset);
$subject   = mb_encode_mimeheader('サブジェクトテキスト', $charset);

以上で、文字化けなく正常にメール配信出来るようになりました。


【訂正・未解決】RSSフィードから日付が取得出来ない

1月 6th, 2010 admin Posted in PHP No Comments »

先日、RSSフィードから日付が取得出来ないというタイトルで記事を書いたが、
その際、解決したと書いたが、よく見たら解決出来ていませんでした。
すみません。

まだ、解決していないので、分かり次第追加で書き込みたいと思います。

もし私の記事見たかがいましたらスミマセン。。。


RSSフィードから日付が取得出来ない

12月 29th, 2009 admin Posted in PHP 1 Comment »

お客さんのホームページにWordPressのRSSフィードを読み込んだ
新着記事のリストを表示させる仕事があったのですが、タイトルや、
本文は問題なく取得・表示出来るのに何故か日付だけ上手く行きませんでした。

原因が良く分からなかったので、一先ずググってみると
同じ現状に当たり解決した方がおり方法が書かれていた
ので参考に試してみた。

- – -

今後も同じ現状ではまる可能性があるので、環境をメモ。
PHPとPearのXML/RSS.phpを使いました。

アイテムを取得する際に


$item['pubDate']

で取得出来なかったので、
 ↓


date("Y/m/d", strtotime($item['pubDate']));

のようにして問題なく取得出来るようになった。


全角・半角スペースをトリムする/PHPメモ

12月 18th, 2009 admin Posted in PHP No Comments »

非常に単純ですが、全角・半角スペースをトリムするファンクションのメモ。

	/**
	 * 全角・半角スペースをトリムする
	 * 2009/12/18
	 */
	public function trimSpace($str)
	{
		return trim( mb_convert_kana($str, "s") );
	}

続 UTF-8 文字化け

12月 2nd, 2009 admin Posted in PHP No Comments »

以前、UTF-8でPHPのウェブDBシステムを開発した際に、
特定の文字が「?」に文字化けしてしまう現象があった。

その時は、力業で、エンコード/デコード処理で解決したが
ちょっと前にすんなり行く方法が分かった。。。

何をやったかというと非常に単純なことで。。。書くのも
お恥ずかしいが、MySQLの各テーブル、フィールドの文字コードの
照合順序を「utf8_unicode_ci」にしただけです。

ようはUIから入力される文字コードとDB側の文字コードが
違っていただけでした。


日付のフォーマットを変える/Smarty

11月 24th, 2009 admin Posted in PHP No Comments »

日付のフォーマットの設定方法を良く忘れるので、メモ。

下記のようして「2009年11月24日 19:17:48」のフォーマットで表示する。

{$smarty.now|date_format:”%Y年%m月%d日 %H:%M:%S”}


SAKURA Internetの仕様関連 PHP

9月 25th, 2009 admin Posted in PHP No Comments »

先日、仕事であるPHPのシステムを納めたのだが、少し苦戦したのでメモ。

終わってみれば単純なことなのだが、SAKURA Internetのサーバは、
PHPのパーミッションを明確に指定する必要があった。

その設定に気づくまでは何故システムが動かないか全くわからず
発狂しそうだった。。。(笑

落ち着いて考えれば直ぐ分かることなのに、お恥ずかしい限り。。。

また同じケースに陥るといけないので、オンラインマニュアルの
URLをメモ

support.sakura.ad.jp/support/manual/rs/tech_cgi.shtml


MD5ハッシュのコリジョンは起こりうる

8月 20th, 2009 admin Posted in PHP No Comments »

仕事でも良くMD5ハッシュを用いることがあるが、
先ほど何年も間違った認識をしていることに気付いた。。。

MD5ハッシュは、ユニークの文字列を生成してくれ
コリジョンは起こりえないと思い込んでいたのだが、
MD5ハッシュに限らず、ハッシュ関数において100%
コリジョンが起きないということはないそうだ。。。

今まで開発したシステムでは、問題は発生していないが
ちょっと怖いな。。。ちょうど新しいシステムでもMD5を
使う予定でしたので変わりの方法を考えなければ。。。


PHP ディレクトリを丸ごと削除

8月 18th, 2009 admin Posted in PHP No Comments »

rmdir だと中身が空でないと削除出来ないらしい。。。

再帰的に削除する方法もあるみたいですが、今回は、system関数を
使う方法をメモ

$dir = “/sakujo/”;
system(“/bin/rm -rf $dir”);


UTF-8 文字化け「~」

7月 2nd, 2009 admin Posted in PHP No Comments »

ここ数ヶ月見落としていたのだが、自作のPHPのシステムで、「~」が
半角の「?」に文字化けしていた。。。

なんでこれだけ?
まだハッキリした原因は分かっていませんが、

一先ず、URLエンコードして保存して、表示の際にデコードして
対処しました。(あんまり良くないけどね)

//エンコード処理
foreach ($list as $key => $value) {
$list[$key] = str_replace('~', '%E3%80%9C', $value);
}

//デコード処理
foreach ($list as $key => $value) {
$list[$key] = str_replace('%E3%80%9C', '~', $value);
}