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

Zend DB あいまい検索(LIKE %hoge%) メモ

6月 22nd, 2010 admin Posted in PHP No Comments »

Zend DB での あいまい検索のやり方が分からなかったので
ネットで色々と調べてみた。一応方法が見つかったので
忘れないようにメモ。

$sql = $this->_db->select()
 ->from( 'sample' )
 ->where('name LIKE ? ', '%'.$name.'%')
 ->order('id ASC')
 ->limitPage($pid, $perPage);

べたにSQL書いた方が楽なときもあるけど、
今更戻るのも面倒なので維持でもこのスタイルで。。。


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

4月 30th, 2010 admin Posted in PHP No Comments »

PEARのXML/RSS.phpで “pubDate”が取得できないと
過去になんどか、書き込んだことがあったがようやく解決した。

“pubDate”でどうやっても取得できず色々調べた結果、
“pubdate”と”D”を小文字にすることで解決した。

これってバグなのかな???

foreach ($rss->getItems() as $item) {
	$tmp['title'] = mb_convert_encoding($item['title'], 'UTF-8', 'auto');
	$tmp['link'] = $item['link'];
	$tmp_date = $item['pubdate'];
	$tmp['pubdate']  = date('Y.n.j', strtotime($tmp_date));
	$list[] = $tmp;
}


※過去記事:
【訂正・未解決】RSSフィードから日付が取得出来ない – 2010/01/06
RSSフィードから日付が取得出来ない – 2009/12/29


PHP array_filter() を使って空の要素を削除する

4月 7th, 2010 admin Posted in PHP No Comments »

サムライエンジンさんのブログに array_filter() を
使って空の要素を削除するというエントリーがあった。

今まで、array_filter()を使ったことがなく便利そう
だったので今度使うときに忘れないようにメモ。

$arr = array(1,2,'',3,'',4,5,'','','',6);

$result = array_filter($arr, "_array_null_del");

//配列中の空を削除
//true を返せばその値だけ $result に入る
function _array_null_del($v) {
	if($v == null || $v == ""){
		return false;
	}
	return true;
}

//$resultの中はarray(1,2,3,4,5,6)となる
print_r($arr);

array_filter

callback  関数によりフィルタ処理が行われた input  の全ての要素を含む配列を返します。 callback 関数が true を返した場合、 input の現在の値が結果の配列に入ります。 input が連想配列の場合、 キーは保存されます。

※詳しくはコチラ


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 1 Comment »

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

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

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


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

12月 29th, 2009 admin Posted in PHP 2 Comments »

お客さんのホームページに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