PHP6の新機能 備忘録まとめ1

PHP6の正式版のリリースが待たれていますが、現在多くのプログラムはバージョン4、5で稼動しています。
一部のサーバではPHP4からPHP5への移行を行っていますが、いまだにPHP4,5は現役と言えるでしょう。
しかし、PHP6のリリースでPHP4,5,6と環境が3つになると管理が面倒になります。
少なくとも、私は未だPHP6というものをよく知りません。
そこで、今回はPHP6について新機能を備忘録として記載しておくことにしました。

続きを読む

Google Heneymoon と Google Sandbox

先日、Googleの検索結果から消えてしまうという現象について記事を書きました。
あれから、一向に戻ってくる気配はありません。
もともと、気配を感じることはできないのですが。

そこで、いろいろと調べてみたところ、「Google Heneymoon」と「Google Sandbox」というキーワードを見つけました。

Google Heneymoonとは、その名とおり新婚旅行のようなもので、ドメインを新規取得したサイトにご祝儀として一時的に上位に表示されるという、Googleの粋なはからい。
うれしいことですが、一時的なものなので、ぬか喜びといった感じ。

Google Sandboxについては、一度Google Heneymoonから帰ってきたサイトを信頼できるか検査をする場所といったところです。

どうやら、私のサイトはHeneymoonから帰ってきたところみたいですね。

Google から消えてしまう 怪奇現象

これは、別のサイトの話です。

googleでビックキーワードで、上位表示を狙っていたんですが、ある時4ページ目に表示されるようになりました。
SEOの効果が現れてきたんだと、喜んでいました。
アクセス数も、順調に増えてきました。

しかし、

ある日、いつものように順位を確認してみると、昨日までいた場所にいません。
ん、・・・あっ、もしかして順位上がったか。と思ってみましたが、ありません。
肩を落として、順位下がったかと思って、探してみるもありません。

そうです、どこにもないんです。

webmastertoolで確認すると、インデックスはされています。
スパムと認識されたのでは、ないようです。

では、一体。

調べてみると、どうもgoogleには表面上のindexと裏側のindexがあるようです。
情報元:
消えては現れるGoogleインデックスの怪
Google検索で表示が消える怪

サイトを更新すると、とりあえず表面上のindexに入る。
その後、しばらくして一度裏側のindexに格納される。
その裏側のindexで、何かしらの確認作業?を行い、再び表面上のindexに現れるそうです。
これは、上位に表示されるサイトほど顕著にあらわれるそうです。

真意のほどは、分かりませんが、今はとりあえずこの情報を信じて静観するしかなさそうです。

ちなみに、Yahooはというと、まったく上位には表示されていません。
こちらも、調べてみたんですが、アフィリエイトサイトのような外部へのリンクが主となっているサイトはYahooからは嫌われるみたいです。
<a>タグにrel=”nofollow”を指定していても、無視されるとかされないとか。

本当は、Yahooでの上位のほうが効果があるキーワードなんですが、とりあえずYahooはあきらめています。

PHP 別ウィンドウ(window.open)でマルチプロセスの実現

以前、PHP マルチスレッド処理(並行処理)を実行する方法という記事を書きましたが、別ウィンドウを開いてマルチプロセスを実現する方法が分かりました。

それは、ほんと単純なことでした。

セッションを使わない、開始しないだけでした。

セッションを開始すると、セッション情報が保持されるため別ウィンドウを開いたとしても、同じセッションIDを利用する。(たぶん)
その同じセッションIDというのが曲者で、同じセッションIDだと別ウィンドウを開いても同一プロセスとして扱われてしまい、片方のプロセスが終わらないともう一方のプロセスが開始されない。

気づいたときには、「なんだ、そんなことか」と思いました。

MySQL max_join_size は意外に重要な設定

先日、とあるレンタルサーバーで特定の処理が動かないというトラブルが発生しました。

以前から、トラブルが続いていたレンタルサーバーだったのですが、今回は以前とは違う種類のトラブルでした。
前回は、MySQLサーバーへの接続に失敗するというトラブルだったのですが、今回は特定のSQL文を実行するとエラーとなってしまうトラブルでした。
そのSQL文とは、「join」を含むSQL文です。

さて、原因は分かったけど解決方法は?

全部の「join」を書き直すとなると、相当な労力だ。
どうにかならないものか。

とりあえず、データベースの設計を見直すことに。

なぜか、このシステムのデータベースにはインデックスの設定がされていない。
PRIMERY KEYは設定してあるんですが。
とりあえず、気休めでもいいからインデックスを設定しておこう。
このインデックスの設定が正解かどうかは分からないが、「join」を含むSQL文でも正常に処理が行われるようになった。
んー、インデックスを設定することで参照レコードが少なくなった??

何はともあれ、システム無事復旧。

私は、あんまり「join」を使わないのですが今回のことで「join」を使いこなせると便利だが、諸刃の剣では?と思うようになった。
それから、インデックスは必ずDB設計する時には設定をする。

普段から、1、000万単位のDBを扱っているのでインデックスにはシビアに考えているので私自身は問題ないんですけどね。

ちなみに、レンタルサーバー会社にこのことを問い合わせてみると
共用サーバーなので、他の誰かが無茶なSQLを流しているみたいで制限をかけた。
とのこと。
そういう大事なことは、事前に伝えないといけないと思うんですが。

ブラック会社に勤めているんだが、俺はもう限界かもしれない を読んでみた

読んでみた感想です。

この本は、これから社会人になろうという人、ニーとな人たちに読んでもらいたい本でした、

特にプログラマやSEを目指している人達に読んでもらいたい。

プログラマやSEの仕事が大変かというと偏見となるかもしれない。

他の職種にも大変な面があるとは思う。

しかし、私も同じSEとしての視点からしか感想は言えないので、その点は了承してもらいたいです。

スレ主はブラック会社ということで、会社が特殊だという表現をしているが、実際のところシステム会社というのは、全てブラック会社と言っても過言ではないと思う。

特に中小のシステム会社はブラック会社と思っていて間違いないかもしれない。

ただ、本にあるような人間がそろっていることはないと思うが。

いや、現実はもっとひどいような気もする。

特に、プログラマ・SEという職種に就く人間は少しズレている人が多い。

私も例にもれず、どこかズレている。

そんな人間関係の中で、仕事を遂行するという現実をどう過ごすか。

やはり、会社というのは仕事の内容もそうだが、人間関係が一番大切だと思う。

さて、作中に出てくる藤田さんという人物がいるのだが、この人は本当に「ネ申」である。

スレ主が、ブラック会社でやっていけるのも、ブラック会社が運営できるのも藤田さんのおかげだろう。どこのブラック会社にも、こういう人物がいるのだろうか。

冒頭では、これから仕事に就くという人に読んでもらいたいと書いたが、私自身参考になる点があった。

それは、人間関係のやりかたと人材育成について私は参考になった。

作中に2人の社員が登場するわけだた、タイプの全く違う二人をタイプの違う二人の教育者が担当するわけだが、人それぞれ教育方法があるということがよく分かった。

10人いれば、10通りの教育の方法があるということだ。

そういう点では、現在仕事に就いている人にも読んでもらいたい。

最後に、ブラック会社だからなどという理由で辞めるのは間違いだと思う。

そして、どんな状況においても精一杯自分自身のできることをする。これが大切だと思った。

本自体は、スレ形式でまとめられているので分かりやすく、そしてスレを読んでいる感覚で読めるのであっというまに読めてしまう。興味があれば、一読の価値はあると思いますよ。

ブラック会社に勤めてるんだが、もう俺は限界かもしれない ブラック会社に勤めてるんだが、もう俺は限界かもしれない

レンタルサーバー リンククラブ「LHX」

ホスティングサーバー(レンタルサーバー)選びって結構大変ですよね。
そこで、今回はお勧めレンタルサーバーの紹介をします。

リンククラブホスティングサービス LHX

まず、気になるのがサーバの仕様ですが、
CPUはインテル製Xeon5300系のクワッドコアを複数以上搭載しています。
これは、サーバというかコンピュータの核となる部分です。
サーバのディスク領域はRAID10を採用しています。
RAID10って珍しいですよ。
普通は、RAID1です。
違いは?
普通のレンタルサーバはRAID1が多数だと思うのですが、RAID1はミラーリングというもので2台のハードディスクに同じデータを書き込んでを1台に見せて運用する技術です。
つまり、1台のHDDが故障しても、残りの1台でノンストップで運用できるのです。
それじゃ、RAID10って一体?
RAIDには他にもRAID0、RAID5などがあります。
RAID10はRAID0+1とも言われます。
RAID0は、一つのデータを分割して2台のHDDに書き込みます。そうすることでパフォーマンスが向上するわけです。
つまり、パフォーマンスと冗長性を備えたRAIDがRAID10というわけです。

つぎに、データ領域と価格ですが、60GB が月額1、333円。
これは結構お得です。
そのほかにも、PHPもデータベースも使えます。

そして、マルチドメインにも対応していますので、いろいろな使い方ができます。

申し分ないです。

お試し期間も設定してるようで、とりあえず試してみたい人は試してみる価値ありです。

リンククラブホスティングサービス LHX

アフィリエイト やっと・・・

アフィリエイトを初めて半年ほど経ちましたが、先月やっとまとまった売上があがって
今月、成功報酬を手に入れる運びとなりました。

正直、アフィリエイトを始めたころは夢に満ち溢れていて結構いけるんじゃないか。って思ってました。
しかし、現実はそう上手くはいきません。
アクセス数も増加しない日々が続いていました。
そんな状況でも、とりあえず100記事を目標にがんばっていました。

そんなある日、レポートを見ると商品が売れているではないですか。
正直、目を疑いました。
金額も結構なものでしたし、うれしい限りでした。
なんでしょうか、自分でお店を出して初めて商品が売れた感覚というんでしょうか。
それ以来、日々どうやったらアクセス数を伸ばせるか。どうやったら、商品に目を止めてもらうか。
一商店のような感覚です。

商品が売れたのはA8というASPなのですが、複数提携していますが、A8が一番使いやすいように思えます。
審査も比較的早いですし、商材も豊富なのでジャンルに併せたものがある気がします。
アフィリエイトで大金を手にしようとは思ってはいないですが、「商売」のうち「集客」と「販促」のことは
勉強になると思います。

Excel の オートフィル のこと

今回はExcelのことを。

みなさんExcelって使いますか?
WEBシステムの開発をしていると帳票なんかはExcel形式で出力したりすることもあると思うんですが、MySQLなんかのデータベースの整合性のチェックなんかをするときも使ったりしています。
あと、Accessなんかも。
ちょっとした確認やSQL文の作成には便利です。

そんなExcelですが、ちょっとしたことを調べたので、忘れないうちに書いておきます。
Excelにはオートフィルって機能があります。
セルの右下をドラッグしたままでカーソルを移動すると、セルの値が加算されて下のセルや横のセルに書き込むことができる便利な機能ですよね。
でも、関数なんかを書いていると関数内の一部は固定の値で一部はオートフィルの機能を適用したい。

まぁ、初心者的な悩みですが。

さて、どうやってやるか。

やり方はいたって簡単。
関数の引数の値を入力(選択)するときに、【F4】キーを押下します。
するとセルの値の前後に’$’が付加されます。
これで、いつもどおりにオートフィルを使えば一部固定のオートフィルができます。

PHP mail関数を使って日本語ファイル名を添付する

PHPのmail関数を使って、日本語(マルチバイト)のファイル名を添付するしてメールを送信する方法を紹介します。

方法はいたって簡単でした。

普通に日本語ファイル名をそのまま記述すると、拡張子が外れた状態で受信してしまいます。

そこで、一つおまじないをかけます。

日本語ファイル名に対して、mb_encode_mimeheader()関数を使ってエンコードするだけです。

例:$mail_body .= “Content-Disposition: attachment; filename=\””.mb_encode_mimeheader(“ファイル名”).”.【拡張子】\”;\n”;

もしかしたら、間違っているかもしれませんが、私の環境下では正常に送信・受信できました。