5丁目通信(仮称)

とある5丁目で活動する還暦を過ぎたWebプログラマーの覚え書きです。それとかかってくる迷惑電話や、家業のアパート経営について。

カテゴリー: システム関連

  • array_intersect_key()とかPHP の配列関数はたくさんあるのねという話し

    CakePHPのソースを見ていて、自分では使ったことのない配列の関数があった。例えば、array_intersect_key()とか。この関数は、「キーを基準にして配列の共通項を計算する」というものらしいが、その他マニュアルを見るとたくさんの配列関数があった。

    自分は配列かどうかとか、要素が含まれているとか、簡単な関数しか使わないが、おそらく用意されている関数に似たような機能を自分で作っていたかもしれない。用意されている関数であれば、処理も速いしバグも少ないかもしれない。もっとマニュアルを読みましょう。> 自分

    でも、PHPの場合、たまにバージョンアップをしていくと、推奨の関数ではなくなるとかあるのでとってもマイナーな関数は注意が必要かもしれない。

    著:山田祥寛
    ¥1,870 (2025/11/25 12:18時点 | Amazon調べ)
    著:松浦 健一郎, 著:司 ゆき
    ¥2,574 (2025/11/28 14:13時点 | Amazon調べ)
    著:谷藤賢一, 著:徳丸浩
    ¥2,750 (2025/11/25 12:18時点 | Amazon調べ)
  • CakePHPのfind()のマニュアルが新しくなった?という話し

    CakePHPでデータを取得するメソッドfind()のマニュアルですが、知らないうちに新しく更新されていた。気が付かなかっただけ? でも、これはありがたい。

    CakePHPの ポケットリファレンスに書いてあるfind()のページだと

    Model::find($conditions, $fields, $order, $recursive)

    となっていますが、新しいfind()では、

    Model:find($type, $params)

    なのです。

    $typeに'all''first''count''list''neighbors' または 'threaded' のいずれかを設定すると、

    findAll(), findCount()の代わりに使えます。パラメータをだらだらつなげなくてもいいのがいい。'list''neighbors' って何ということで、まだわかっていませんので、これからマニュアルを読んでみます。まだ、英文の部分が残っているけど。

    でも、そろそろCakePHPのポケットリファレンスの改訂版を出してくれないかな。内容が古くなっているけど、ささっと引けるので便利に使っています。

  • CakePHPのformヘルパーのラジオボタンで、デフォルトを指定する話し

    ちょっとはCakePHPのformヘルパーではまったこと。覚え書きです。

    formヘルパーのinputメソッドでラジオボタンを表示できます。

    $groups = array('a'=>1, 'b'=>2, 'c'=>3);
    
    $form->input('User/group_id', array('options'=>$groups, 'type'=>'radio'));
    

    といった書き方です。

    ここで、bをデフォルトの選択にしたいとします。

    $form->input('User/group_id', array('options'=>$groups, 'type'=>'radio', ‘checked’=>2));
    

    正解は、コントローラで

    $this->data['User']['group_id']='2';
    

    のように初期値を入れていかないといけないようです。

    著:山田祥寛
    ¥1,870 (2025/11/25 12:18時点 | Amazon調べ)
    著:松浦 健一郎, 著:司 ゆき
    ¥2,574 (2025/11/28 14:13時点 | Amazon調べ)
    著:谷藤賢一, 著:徳丸浩
    ¥2,750 (2025/11/25 12:18時点 | Amazon調べ)
  • モバイル導入計画を考えた話し

    PTAで学校に入り浸りになりそうなので、本格的にモバイル環境をそろえる必要があります。

    去年までは、ウィルコムPHSのデータ通信を契約していた。これから新しいところに申し込むつもり。

    やりたいことは、ノートPCにつなげてWindwos上での作業。リモートデスクトップ接続で事務所のPCにアクセスしてしまう。最初はメールだけに限定して、携帯電話だけで済まそうかと思ったが、どうも小さい端末では難しそう。携帯電話の文字入力が我慢できない。

    今の携帯電話のauのデータ通信サービスとかあるようだが、そろそろauともお別れするかもしれないので却下。b-mobileのドッチーモも契約に縛りがなさそうなのでよさそうだが、本当にお得かどうかわからないので様子見。いまさらWillcomではないので、こちらも却下。UQ WiMaxは試用期間中に使ってみたが、建物内で接続できないので、こちらも却下。残りは、イーモバイルくらいでしょうか。

    イーモバイルは、縛りが厳しすぎる。2年縛りだと安いようだが、2年後にモバイルデータ通信なんてどうなっているかわからない。途中解約を覚悟して契約しなければいけないかもしれない。購入するなら、Pocket Wifiで、契約は新2年でしょうか。料金プランが難しい。どれがいいかわからない。

    スマートフォンも一緒に購入して、スマートフォンをPCのモデム代わりにして接続できないものか? そればら1社の契約で済む。でもできなさそう。スマートフォンも自分ではiPhoneはなさそうだし、Windowsのスマートフォンもあり得ない。Androidといえば、ようやく各社出揃ったが、どれがいいのかわからず思考の無限ループに入っている。スマートフォンは、まだまだ導入が先だな。しかし、スマートフォンも使っていないと営業トークでは弱いし、さてどうしたものか・・。

  • Evernoteのメモでマインドマップが使えると便利なのにね、という話し

    XMind

    とりあえず必要なものは、なんでもかんでもEvernoteに放り込んでいます。

    Evernoteでメモを取るには、用意されているテキストエディタを使うわけですが、これがマインドマップで書ければもっと便利になるのに。

    今使っているマインドマップのソフトはXMindなんですが、XMindのファイルをEvernoteに放り込むとXMindのアイコンとファイル名になってしまう。ファイル名をクリックすればXMindが起動するが、中のテキストは検索対象にならないし、そもそもいちいちXMindを起動しないと中身が確認できないのは面倒。

    誰かEvernoteでマインドマップでメモをとれるようにしてくれないかなあ・・・。

    今は、Windows Live Syncの同期フォルダにXMindのデータを入れていますが、そろそろDropboxのほうに移していこうかな。本当は共有しないデータは、すべてEvernoteにまとめたいのですが。

    著:田口 和裕, 著:古市 威志
    ¥1,518 (2025/11/24 22:00時点 | Amazon調べ)
    著:コグレマサト, 著:いしたにまさき, 著:堀 正岳, 著:できるシリーズ編集部
    ¥891 (2024/01/05 15:27時点 | Amazon調べ)

    追記

    と書いた後、XMindはやめてFreeMindに替えています。

  • サーバーのIPアドレスを電話で指示しながら変更してもらった話し

    お客さんのお店が閉店ということで、CentOSで動いているサーバーが引っ越しで違うお店に移動する。

    そこでIPアドレスが変更になってしまった。場所が遠いので電話で指示をしながらIPアドレスを変更してもらうことになった。

    最初はログインしてsetupコマンドでIPアドレスを変更してもらえばいいやと軽い気持ちでいたら大間違え。そのサーバーはGUIなのでした。早速xtermとかターミナルを探してもらう。自分は、テキストモードでしかLinuxは使っていないので大変。どのバージョンのCentOSだったかわからず適当にメニューから探してもらう。ターミナルエミュレータだった。

    今度はsetupでIPアドレスを変更しても、設定ファイルを保存してくれない。こちらで見ているsetupコマンドと画面が違うようだ。/etcの下にあるネットワークの設定ファイルを編集してもらえばいいのだが、いまさらviの説明するのは大変。

    そこで、CentOSにあるシステムメニューのネットワーク設定でIPアドレスを編集してもらう。ifconfigで変更されたことを確認。これで、フレッツグループアクセス経由でリモートでサーバーにアクセスできるようになったので、後の設定は大丈夫。

    これで完了。結局1時間かかった。場所が遠いので行くよりは電話で指示したほうが速いのだが、お互いにとても疲れた。

    著:大竹 龍史, 著:山本 道子
    ¥1,639 (2025/11/20 14:08時点 | Amazon調べ)
    著:Piro, 編集:日経Linux
    ¥2,178 (2025/11/22 22:20時点 | Amazon調べ)
    著:三宅 英明, 著:大角 祐介
    ¥2,970 (2025/11/21 13:04時点 | Amazon調べ)
  • VMware Infrastructureが起動できないことのメモ。

    VMware ServerのWeb設定ツールであるVMware InfrastructureがWebブラウザからアクセスできなくなりました。原因は不明です。

    よく見てみると、Internet ExplorerとFirefoxではダメだけと、なぜかChromeではアクセスできるのです。何か設定が間違えているのかなあ?

  • 名刺サイズの用紙で横方向に印刷する方法の話し

    子どもの小学校のPTA会長をやることになりました(この件は、追々書いていきましょう)。入学式の準備で小学校に行きました。そこで首から提げるネームカードが必要になりました。小学校では身元を提示しなければいけません。そこでネームカードの作成を引き受けることになりました。

    ネームカードを簡単に作るには、A4サイズに12枚名刺が並んだ用紙に印刷して切り離すのが簡単でです。しかし、これでは

    縁のぎざぎざがいやな感じです。12枚きっちりだったらいいのですが、8枚とか半端な枚数だともったいない。そこで名刺サイズに裁断された用紙を買ってきました。

    しかし、この名刺サイズの用紙はプリンタに制限があります。まずは小さな名刺サイズに対応したプリンタではないとプリントできません。持っているエプソンのEP-301はこれはクリア。

    まずはどんなソフトで印刷するかを決めます。これから各委員会のメンバーの名札を印刷しなければいけないので差し込み印刷に対応するソフトにします。筆まめという選択もありますが、汎用的につかえるということで

    OpenOffice.orgのBaseにします。Sun Report Builderというアドインもインストールします。名簿データはOpenOffice.orgのCalcで作成しておきます。マイクロソフトオフィスのExcel、WordとかAccessなんて持っていないもので・・・。

    しかし、OpenOffice.orgのBaseは使いにくいのです。自由なレイアウトができません。例えばテキストの均等割り付けとか、テキストとテキストの間の調整とか、画面の編集と印刷プレビューとが合わないとか、突然編集できなくなるとか、いろいろ使いにくいところがあります。最悪は異常終了になること。まだまだ安定していません。

    とりあえずがんばってOpenOffice.org Baseでラベルを印刷できるようにします。Sun Report Builderのアドオンをインストールしておけば、Access並にレポート作成は簡単になります。

    横方向でレイアウトしたので、紙を横で入れると紙送りをしません。よく印刷設定を見てみると名刺サイズの用紙は縦方向しか対応していないのです。90度回転するオプションを探しましたがありません。縦で印刷しようとすると、もちろん横方向に印刷するのではみ出ます。さて、どうしたものか・・・。

    解決方法は、一度PDFファイルに出力します。JUST PDFなどのPDFファイルの編集ソフトで90度回転してから、縦方向で印刷します。多少手間がかかりますが、これで正しく横方向の名刺サイズの印刷が完了です。

    以上、長々を書きましたが、次に名札を印刷するときの覚え書きです。横方向の名刺を印刷するときも使えます。

  • MySQLのデータベースをリストアしたときの文字化けと途中エラーを対応した話し

    500Mバイト位のダンプされたSQLデータをリストアしたときの問題と対応方法の覚え書き。詳しい対応方法は、こちらから。

    まずは途中で、

    ERROR 2006 (HY000) at line 803997: MySQL server has gone away

    とエラーが発生した。これは実行するクエリが大きすぎるため。MuSQLのリファレンスマニュアルに書いてあった。ここを参照のこと。今回は、my.iniの設定を

    max_allowed_packet=128M

    にした。

    リストアしたデータベースを覗いてみると、見事に文字化け。ダンプされたSQLファイルは正しくUTF-8になっているので、リストアの問題。SQLのファイルの最初に

    SET NAMES utf8;

    を追加する。今度は正常にリストアしたことを確認して完了。

    そういえば、昔同じことで悩んだことがあるかも・・・。

  • ファイルサーバー(NAS)のTeraStaionを発注した話し

    お客さんのファイルサーバーを発注しました。既にWeb+DBで使うPCサーバーをお客さんが発注して、予想外に早く届いたようだ。こちらに送っていただくようにお願いしていたが、手違いでお客様のほうに届いたようで、こちらに転送してもらう。

    慌てて残りのファイルサーバーやルーターを発注した。ファイルサーバーは故障しても、オンサイトで面倒見てくれないので、こちらで注文してあとで請求する。

    ファイルサーバーといっても大それたものではない。いつものバッファローのテラステーション。しかし、民生品としてもテラステーションは侮れない。自分の所を含めて何台か導入しているが、トラブルが少ない。パフォーマンスよりも安定していることが肝心。

    しかし、今回は念のために、バックアップ用のUSB外部ドライブと、交換用のハードディスクドライブも一緒に導入している。ファイルサーバーの設定はRAID6を利用する予定。本来ならば、2台のテラステーションで二重化すればいいのだが、予算の関係でバックアップは外部ドライブへ。

    あと、発注は出入りの業者なんて知らないので、いつものアマゾンで通販。ここが安くて早い。美味しい(この場合、質がいいのか)なら三拍子が揃うのだが・・・。

    SambaをLinuxサーバーのインストールしてファイルサーバーとして動かすよりも、サクッとQNAPを入れてしまったほうが簡単、安心、便利でおすすめ。ファイルサーバーだけではなくてIntelのCPUのQNAPなら、Dockerでいろいろとコンテナを設定してサーバーをたくさん立てられるしね。

This website stores cookies on your computer. These cookies are used to provide a more personalized experience and to track your whereabouts around our website in compliance with the European General Data Protection Regulation. If you decide to to opt-out of any future tracking, a cookie will be setup in your browser to remember this choice for one year.

Accept or Deny