PHPで配列の勉強

久しぶりにPHPで配列の勉強をした。

目次などの表示を列表示で大項目-小項目-小項目というようなデータの表示を考えていました。いわばツリー状なデータの項目表示で、ホームページのメニュー表示をPHPの配列で表示できないかということです。

例えば、

コンピューター(大項目)

  1. アップル
  2. 九十九電機
  3. エプソンダイレクト
  4. DELL 

というようなメニューを配列を使ってPHPで表示したかったのです。 

データの登録方法などいろいろ試行錯誤した結果、データ1行に大項目と小項目を書き込んだら配列で表現できるということが分かりました。

例えば、

<?php
$data=(”コンピューター,アップル,九十九電機,DELL,エプソンダイレクト,ヒューレットパッカード”);//先頭に大項目を、次から小項目を書き込む
$data=explode(”,”,$data);
$daikoumoku=$data[0];
$count=count($data);
print($daikoumoku);//ここで大項目$data[0]を書き出す
print(”<ol>”);
for ($i=1; $i<$count; $i++)//dataの2項目$data[1]から項目数より一つ少ない$data[5]までひとつずつ書き出します
{
$syoukoumoku=$data[$i];
print(”<li>”);
print($syoukoumoku);
print(”</li>”);
}
print(”</ol>”);
?>

というようにです。

なお、まだまだ勉強中なのでおかしなところがあるかも分かりませんがご容赦を。

時事評論家増田俊男さんの時事直言

参議院選挙が民主党の圧勝で終わった後、続投を表明した安倍総理と自民党について時事評論家増田俊男さんの時事直言が緊急国会議員号を出した。増田さんは、今世の中を動かしている資本の論理から時事を読み解く名人なので、参考になります。

詳しくはこちらのホームページをご覧ください。

とても過激な内容なので、こちらのブログには引用しません。
これから日本はどうなるのでしょうか。

wordpressのバージョンアップ

岡山webブログを作成しているWordpressが2.2にバージョンアップしたので、やってみました。しかし、サーバーの仕様がよくわからないのと、以前インストールした時に、EUCでインストールしていたことですんなりとはいきませんでした。

WordpressにはMySQL というデータベースがサーバーに設置されていないといけないのですが、そのMySQL からバックアップをとったものが文字化けをしてバックアップにならないのです。サーバーの仕様のせいだとは思うのですが。私にとっては、この解決にはまだ時間と知識が必要なようです。

それと、Wordpress2.2はEUCが使えず、UTF-8でないといけないのでバックアップをさらに文字変換する必要がありました。

今回、よく分からん!ということで新しいフォルダーにインストールして、全部手作業で、コピー&ペーストで入れ替えました。

初心者でもMySQL とphpMyAdminのことがよくわかるテキストがあればいいと思うのだけれどなかなかいい本がありませんね。

循環農法、赤嶺さんの講演会に行きました

先日、清音において循環農法の赤峰さんの講演会がありました。
赤嶺さんの講演会へは3回目くらいで、約10年前には年始の断食会にも参加したことがありましたが久しぶりにお顔を拝見でき、講演が聴けて楽しかったです。

以前と変わったのは赤嶺さんの考えや取り組みに賛同しているかたがずいぶん増えたことだと思いました。

お話の内容は以前と変わりませんが、改めて農作物の大切さを認識させられました。我が家は1ヶ月まえくらいから、一時中断していた玄米食を再開していたので、玄米食の大切さはよく理解できました。

私が今回の講演で感じたこと&とりくむべきこと 

  • 玄米を食べる(玄米2合で塩がこさじ1程度)
  • ほんまもんの塩(自然海塩)を使う
  • 国産のほんまもんの野菜を食べる
  • ほんまもんの見分け方はオーリングテストで確かめる
  • 陰陽のバランスに注意する
  • 食料自給率を高めるために野菜を育てる

講演会の後、本を2冊購入しましたが、オレンジページムックの「百姓赤峰勝人の野菜ごはん」は野菜を中心にした料理作りに役立つと思います。

倉敷市児島文化センターに吉田拓郎が来る

吉田拓郎のコンサートにはできるだけ行くことにしています。今まで東京、神戸、大阪、広島、倉敷といろいろ行きました。2004年のビッグバンドを引き連れてのコンサートにも行きました。しかし、去年のつまこいには行けません。本当に残念でした。

2007年、今年は、バンドスタイルで比較的小さなホールで全国を回るとのことでした。そして、日程を見ると、コンサートの最終日は11月30日(金)倉敷市児島文化センターです。私は、すでに先行受付でチケットは購入(入金)しましたが、一般販売は7月15日からです。

岡山の吉田拓郎ファンの方「2007年吉田拓郎コンサートツアー」の最終日を児島で迎えましょう。

Yuki::RSSを使ってRSS生成

PHPのおかげでMagpieRSSを使って、RSSを取り込んでWEBに表示することができることが分かったのですが、次は、掲示板などのログデータやYomisearchなどのログデータをRSSに生成できたらいいかと思い、いろいろと探していたら、Yuki::RSSというCGIのモジュールにたどり着きました。XML::RSSという本格的なモジュールもあるようですが、他に付属のモジュールをほとんど必要としない小さなモジュールということで使って見ることにしました。最初はどうやっていいのか分からなかったのですが、

YY-BoardからのRSS生成(掲示板)

というKamoLandさんのサイトを参考にしてyomisearchのログデータからRSSを生成するCGIを作成することができました。上記サイトでは、表示件数や日付のソートなどいろいろと条件を加えていましたが、CGI初心者としては、単純にログファイルを読み込んで、Yuki::RSSを使ってRSS1.0を生成するCGIができればいいということでシンプルなプログラムとしました。もう少しCGIを勉強すればいろいろな条件を加えたRSSを生成することが出来るかも分かりません。現在トップページに表示している新着更新サイト、相互リンクピックアップはKamoLandさんとYuki::RSSとMagpieRSSのおかげです。


 

MagpieRSSをいろいろ試して

PHPで使えるRSSパーサーのMagpieRSSをいろいろと試しています。
書かれているのがPHPなので、表示には、もちろん、PHPの関数が使えます。
たとえば、RSSの何項目もある<item>から7項目のみ表示させたいときは、

$rss->items = array_slice($rss->items, 0, 7)

array_sliceという関数が使えます。

問題は、日付の変換です。日付に関しては、いろいろな表現方法があるようで、変換もそのつど悩んでいます。(基礎がないので仕方がありませんが)。

あるサイトの日付の出力は、
<pubDate>Thu, 15 Mar 2007 15:00:00 +0900</pubDate>

となっていて、この場合は

$date=$item[pubdate];
$daytime=date(”■Y年m月d日”,strtotime($date));
$daytime = JcodeConvert($daytime, 0, 1);

などとするとうまく変換されました。

また、あるサイトのRSSは、

<dc:date>2006-12-27T09:58+09:00</dc:date>

となっていました。この書式の年号の変換の仕方とdc:dateという書き方をどういうふうに変換したらいいのかわからず、いろいろ試してもエラーばかりでしたが、MagpieRSSを紹介していたサイトのコメントの中に答えがありました。

dc:dateは[dc][date]いうことと、MagpieRSSのユーティリティが使えそうなことが分かりました。こんな感じでうまく変換できました。

include_once ‘rss_utils.inc’;
$date=$item['dc']['date'];
$date=parse_w3cdtf($date);
$daytime=date(’■Y年m月d日’,$date);
$daytime = JcodeConvert($daytime, 0, 2);

何かに書き留めておかないと忘れることもあるので、web作成メモとして残しておくことにします。

オフラインでPHPを

ホームページを作りたての頃は、サーバーがCGIにしか対応できていなかった。CGIを利用して見たいと思い、参考にしたのがKENTさんの「自宅マシンサーバ化計画 (Windows編)」 。説明どおりに「  AN HTTPD 」とActivePerlをダウンロードして、ローカルでCGIをテストしてサーバーにのせることができました。

このたび、サーバーがPHPに対応できたので、どうしてもPHPを動かして見たいと思い、WORDPRESSの参考書などを読んで、「APACHE」と「PHP」をダウンロードしてインストール。それでローカルでPHPは動作したのですが、サーバーを2個以上運営している私としては使いづらいのです。「ANHTTPD」のときは、オプション/一般を開けてドキュメントルートをローカルのディレクトリーに書き換えるだけなので使い勝手がいいと思っていましたから。そこで、。「ANHTTPD」でもPHPが使えないかと思っていたら、使えることがわかりました。参考にしたのは、

AN HTTPDPHPを動かす と

PHP超入門

WINDOWSなのでPHPをPHP.EXEで実行させるように設定して動作させることができました。PHP初心者なのでこういうサイトがあると助かります。

PHPで簡易データベースによるHP作成

PHPは、HTML表示が使いやすいので、ブロックを組み立てるような感覚で作成できるところが便利です。いろいろとPHP初心者向けのホームページをサーチしていたら、「アフリエイトのためのPHP入門講座」に行き当たりました。その中で、「 簡易データベースを作ってみよう 」というコーナーがあり、CSVファイルから、必要な項目を呼び出してHTMLを書き出しす方法がていねいに分かりやすく解説されています。これを応用すると、エクセルで情報を一元管理して、それを更新したとき、CSVファイルに変換してサーバーにアップするだけでいいので便利です。

とりあえず、試しに交通情報を作り変えて見ました。

Wordpressのバージョンアップ

Wordpressが2.12になったのでバージョンアップしました。

Wordpressのプラグインを利用してのバックアップがうまくいかず、PHPmyAdminを利用してのバックアップも文字化けしているようで不安でしたが、まだ内容も少ないので書き込みのテキストだけ直接コピーして保存してバージョンアップしました。新しいバージョンを上書きインストールしてupgradeさせ、一応終了。カテゴリーの新規追加でいきなり文字化け。しかし、修正を加えるところで直ったり、少し不安定なところもあるようです。

Project-Id-Version: WordPress 2.5 ja 1.0 Report-Msgid-Bugs-To: wp-polyglots@lists.automattic.com POT-Creation-Date: 2008-04-25 15:51+0000 PO-Revision-Date: 2008-04-26 21:17+0900 Last-Translator: tai Language-Team: wp-ja MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Poedit-Language: Japanese X-Poedit-Country: JAPAN Plural-Forms: nplurals=1; plural=0; X-Poedit-SourceCharset: utf-8 X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_c X-Poedit-Basepath: /Applications/MAMP/htdocs X-Poedit-SearchPath-0: wp-trunk « Previous entries Project-Id-Version: WordPress 2.5 ja 1.0 Report-Msgid-Bugs-To: wp-polyglots@lists.automattic.com POT-Creation-Date: 2008-04-25 15:51+0000 PO-Revision-Date: 2008-04-26 21:17+0900 Last-Translator: tai Language-Team: wp-ja MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Poedit-Language: Japanese X-Poedit-Country: JAPAN Plural-Forms: nplurals=1; plural=0; X-Poedit-SourceCharset: utf-8 X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_c X-Poedit-Basepath: /Applications/MAMP/htdocs X-Poedit-SearchPath-0: wp-trunk · Project-Id-Version: WordPress 2.5 ja 1.0 Report-Msgid-Bugs-To: wp-polyglots@lists.automattic.com POT-Creation-Date: 2008-04-25 15:51+0000 PO-Revision-Date: 2008-04-26 21:17+0900 Last-Translator: tai Language-Team: wp-ja MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Poedit-Language: Japanese X-Poedit-Country: JAPAN Plural-Forms: nplurals=1; plural=0; X-Poedit-SourceCharset: utf-8 X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_c X-Poedit-Basepath: /Applications/MAMP/htdocs X-Poedit-SearchPath-0: wp-trunk Next entries »Project-Id-Version: WordPress 2.5 ja 1.0 Report-Msgid-Bugs-To: wp-polyglots@lists.automattic.com POT-Creation-Date: 2008-04-25 15:51+0000 PO-Revision-Date: 2008-04-26 21:17+0900 Last-Translator: tai Language-Team: wp-ja MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Poedit-Language: Japanese X-Poedit-Country: JAPAN Plural-Forms: nplurals=1; plural=0; X-Poedit-SourceCharset: utf-8 X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_c X-Poedit-Basepath: /Applications/MAMP/htdocs X-Poedit-SearchPath-0: wp-trunk