ソフトウェア開発者の日常

こだわりなく書きたいことを書いていきます。

PHP

PHP:TCPDFで調べたこと

自分で試した内容だけど、バラバラで探しにくいのでまとめておく。 photo credit: Cranky Pressman via photopin cc TCPDFマニュアル(勝手訳)にはお世話になってる。 TCPDFマニュアル(勝手訳) MultiCellで文字の大きさを自動で縮小させて枠に収める$pdf-…

PHP:¥マークの判定動作ではまった

久しぶりに¥マークではまった。何年ぶりくらいだろ。 photo credit: Kaptain Kobold via photopin cc ことの発端 ¥マークが含まれているかチェックするために、 $str = "入金予定"; $pos = strpos( $str, "¥¥"); if ( $pos !== false ) { echo("a"); } とし…

PHP:セッションのタイムアウトがよくわからない

session関係の設定をして気がついたこと。 photo credit: Ian-S via photo pin cc ことの発端 Webのシステムになって、ログインして放置しているとセッションが切れるんだろうけど、実際どれくらいの時間で切れるんだろうという話になったので試してみた。 …

PHP:OLE経由でExcelファイルを扱うときの注意点

当たり前といえば、当たり前なんだけど。 photo credit: Till Zoltán via photo pin cc Excelで作られたシステムからデータを抜き出して、データベースに登録するプログラムを作っている最中に気がついたこと2点。 1.ボタンの貼り付けられているセルからは、…

PHP:月末の日付の求め方

最近もわからなくなって、昔のソースコードを探してた。 photo credit: pvera via photo pin cc プログラムを作っていると、データを抽出するときに月末の日付が欲しいことがある。 if文かSQLの条件で、 日付データ < 2012/8/1 とすればいいのはわかっている…

プログラムでメール送信失敗を判定して、別のメールアドレスに送りなおすことができるか

考えてみたけれど、簡単には出来ないという結果になった。 photo credit: Éole via photo pin cc なぜそんなことを考えたのか お客さんから、 「プログラムから添付ファイル付きメールを送ると、添付ファイルの容量が大きいために受け取れない人がいる。 そ…

PHP:TCPDF:文字の大きさを自動縮小させて、枠に収まるようにする

一覧表をPDF形式で出力する必要があり、Excelのようにセルの大きさは変えず、文字を自動で縮小させたくなった。 プログラム内で、計算してフォントのサイズを縮小しなくてはならないのかと思いつつ、試した結果、以下のようにすると、自動で文字が縮小して収…

PHP:HTMLメールの送信方法を探した

PHP

既存のサイトに、HTMLメールの送信機能を追加しなくてはならなくなった。 現在は、問い合わせフォームの内容送信にPHP標準のmail()でメール送信をしている。 mail()では手間がかかるだろうから、他の方法はないかと検索した。 検索した結果、PEAR::Mailを使…

PHP:ディスク空き不足時に発生した現象

PHP

動作確認のためにシステムにログインすると、画面の下の方に Warning: Unknown: write failed: No space left on device (28) in Unknown on line 0 Warning: Unknown: Failed to write session data (files). Please verify that the current setting of se…

PHP:integerの最大値はいくつか

PHPは宣言なしで変数が使えるので、変数に整数が代入されたらinteger型になる。 integer型なら、上限があるはずだと思って調べたら、integer型の上限を超えたらfloatになると書いてある。 以下のコードで確かめたら、確かにfloatになっていた。 "; } ?> int(…

PHP:メモリの解放は重要

お客さんから連絡があって、システムを確認するとブラウザの表示が真っ白。 何が起きたかと思い調べていたら、MDB2で1GB以上のメモリを確保しようとして、エラーが出力されてるようになった。 原因調査 1画面で10項目以上の件数データを表示しているが、1個…

PHP:curlってなんだろ?

某社の決済システムを組み込むために、サンプルプログラムを試したら、 Fatal error: Call to undefined function curl_init() in D:\xampp\htdocs\XXXXXX.php on line 71 と表示された。 php.iniの ;extension=php_curl.dll を extension=php_curl.dll にし…

PHP:Excelを出力する方法を調べる

新規の案件で、PDFファイルまたは、Excelファイルの形式で帳票を作成する予定をしている。 PDFファイルなら、TCPDFを使うことがすぐ決まったが、Excelは作成したことがないので、調べてみた。 調べた結果 PHPExcelとSpreadsheet_Excel_Writerが存在すること…

PHP:PEAR:Image_Barcodeを使ってバーコード生成で間違えていたこと

お客さんから、JAN8かJAN13のバーコードを受付時に読み込ませて、処理をしたいが方法はないかと言われたので、 バーコード画像を生成する。 バーコード画像を埋め込んだPDFを生成する。 PDFをメールに添付して対象者に送る。 添付のPDFを印刷してもってきて…

メールが送信できるようになった

メールサーバーの管理者の方と話せるということで、再調査に行ってきた。 原因特定 SMTPサーバーからは、「SMTP server response: 451 See http://pobox.com/~djb/docs/smtplf.html.」が返されていた。 http://pobox.com/~djb/docs/smtplf.htmlを見ると、htt…

PHP:mail()/mb_send_mail()で、サーバーから451が返された

お客さんからメールが送れなくなったと連絡があったので、調査にいった。 環境調査 最初は設定の問題かと思って調べていたが、問題なし。 telnetでSMTPサーバーに接続して、コマンドで送信の手順をおこなって問題なし。 プログラム調査 プログラムを調べても…