TECH INFO

Are you ready for TECH INFO?

AD

どっかのブログでそんなことが書かれていましたが、
いや、本当にそう思います。

simpleXML は、割りと使い易いですが、CDATAを使おうとするととても苦労します。

実質上書きには出来ません(新規の書き込みと読み込みは出来るんですけどね、php.netにも載っています。でも、追記とか変更とかは出来ませんでした。なんかいい方法があれば教えてください。僕はこれで、phpがクラスのキャストの出来ない言語だったのだと初めて知りました。)

で、DOMですが...

うざすぎます。めんどくさいです。誰?この仕様決めた奴、頭おかしいと思います。

とりあえず、ノードの値を取るとデータ型まで含めた連想配列で返してくれる仕様はやめて欲しいです。

頭痛い。

Zend_Xml とか、あればいいのに

なんというか、いまいちpearは使う気になれません。
英知の結晶だと思うし、使い勝手も考慮されているとおもうのですが、
なんか、どうも、食わず嫌いです。
いざとなれば、検討してみますけど...

Post date : 2010.11.16 01:19

ある日、MySQLが死亡しました。

さて、とりあえず必要に迫られてPHPのバージョンアップが必要になり、
そうするとyumとかいうアレから「MySQLもバージョンアップしなさい」的な指摘があり、
じゃ、しょうがないなと思って一緒にお任せでお願いしたら、
「無理無理無理無理! 無駄無駄無駄無駄!」的なエラーメッセージを大量にもらったのです。

でも、どうしてもPHPのバージョンアップは必要で
(いや、本当は必要ではないが、XMLなナニが必要で、そこだけ古いファイルというのが見つけられなくて、じゃ、めんどうだから導入ついでにバージョンアップもしちゃうか? と思ったら、MySQLも一緒にバージョンアップしないとダメだよ、問題でるよ、頼むよ、と、yumから指摘があったというのが真相)

どうやらMySQLは同じバージョン5であっても、バージョンアップすると色々問題が出るらしく、安易に考えていてはダメだなと、今回は思い知らされた。
http://dev.mysql.com/doc/refman/5.1-olh/ja/upgrade.html

とりあえず、yum install php でなんかいっぱいエラーが出たので、 yum upgrade mysql を先に行ったら一応アップグレードしてくれた。
そこで、 yum install php を再び行うと成功。

オケー、じゃ mysql を起動させるか…起動しない。

あせって何度もやってみたけど、やっぱり起動しない。

my.conf を覗いてみても、特に問題があるとは思えない。

ログをのぞいてみると、どうやら mysql_upgrade をせよという事を述べているらしい部分が見つかったので、コマンドをたたいてみるが、
「サーバーが立ち上がってないと実行できませんよ」的な英語メッセージが。

サーバーを立ち上げようとしてコケているので、そのログを見てヤレと言われている事をやろうとすると、サーバーが立ち上がっていないと実行できませんと言われる…なんという理不尽、困った。

結局、色々調べると、 /var/lib/mysql の中身を全部消すと起動する との事。
さすがに消してしまうと後々支障が大きすぎる(DBのデータ本体も含んでいる)ので、データを退避させておいてから起動すると、やっと立ち上がった(泣)

その後、退避データを元に戻して、mysql_upgrade を実行すると、ものの数秒で颯爽終了!
そんなんでいいのか?MySQL! いや、大変助かったけれども...

ま、疑問は残ったままだが、なんとか、ようやく平和が戻ってきたのであった。
再起動もサーバのリスタートも問題無くクリア。

安易なアップグレードは禁物ですね、ちゃんと情報を集めてから行いたいものだが、往々にしてそうはいかないのが人間の悲しい性と言えるかもしれない。

しかし、平和は長くは続かないのであった…

phpMyAdmin 動かんやないかー!

最新版を入れたら動いた。
原因がよく分からない...

 

 

Post date : 2010.10.26 15:08

Zend_Config の Zend_Config_Ini を使っていて、
値がオブジェクトで返ってくるので

「めんどくせ、配列で取れるようにすればいいのに…」

などと思っていたら、メンバ関数 toArray()  を呼び出したら、一発で配列になった...
...絶望的な気分になった。
でも、Zend Framework のマニュアルにはそんなことなんにも載ってないんですよ!
(俺調べ)

Zend_Db でできるから、こっちでもできたりして...うわーい、やっぱりできなかった。
っていう確認を、時間がちょっとだけあったから実行してみたら、ちゃんと配列になっちゃんたんだなこれが。

ずがん。

もうちょっとちゃんとしたリファレンスが欲しいなぁ(日本語で)

最近思ったのは、ABC順のリファレンスだと重要性がわからんから、リファレンスの並びを使用頻度別とかにしてくれんだろか?? という事。

そういう事を実現できたら、Google みたいな会社になれるのかもしれんけどね。

Post date : 2010.06.14 19:48

php に array_multisort という関数あります。

これを使うと、2次元配列(多次元配列も?)のソートが出来るらしい。
DBで ASC とか DESK とかやってたのが、これでソートできたら便利でステキです。
しかし、結構クセのある仕様になってたりします。

PHPのマニュアルにも載っていますが、
http://jp2.php.net/manual/ja/function.array-multisort.php

これで使い道をわかれというのも、なんだか酷です。
しかし、そうやってプログラマは鍛えられていくのです!(知らんけど)

ここみて、使ってみて、使い方をマスターしたら、
なんだかデキルプログラマ気分に浸れるような気がします。

ま、頑張って下さい。

Post date : 2010.06.14 17:13

Zend Framework に認証のコンポーネントがあるのですが、
いまいち、内容が掴めません。

汎用につくってあるので、DBだけじゃなく、LDAP とかも使えるようになってるからだと思います。
しかも、認証しかしてくれません。

登録・変更・削除 は、プログラマが実装しないとダメみたいです。

いやぁ…それなら認証もプログラマが勝手に実装した方が楽なのでは??

などと考えるのは、多分シロウトなのでしょうが、
しかし、私はシロウトなので、そっちの方が簡単でよさげな気がしてなりません。

アクセス制御もコンポーネントがあるのですが…これを使ってプログラムするなら、CMS上にシステムを構築する方が手間がかからないんじゃないだろうかと思ったり...

いや、きっともっと深い考えがあっての事に違いない。
私がそこまで読み切れてないんだと思います。

まだまだ私も修行が足りないようです。

Post date : 2010.06.06 15:55