SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 採用情報 ...
技術者募集中
このエントリーをはてなブックマークに追加
SOFTELメモは、株式会社ソフテルの中の開発の人がときどき書いているメモです。

League\CommonMarkでtableをスタイルシートで装飾したい

問題 League\CommonMark でMarkdownをHTMLに変換しています。 表を表示するときにTABLEタグがただの <table> になるのですが、 <table class="tabl […]

【php】 TOTPのワンタイムパスワードを生成する

問題 TOTPのワンタイムパスワードをphpで生成したいです。 答え 例 // ライブラリを利用するか、関数を自作してbase32_decodeしてください $binary_secret = Base32::decode […]

【php】base32_decode()

問題 phpで、base32_decode() したいです。 答え 例 function base32_decode($s) { $m = array( "A" => 0, "B" => 1, "C" => 2, "D" […]

【windows】スタートメニューやタスクバーのフォルダ

問題 スタートメニューやタスクバーのショートカットなどは、どこかのディレクトリに入ってますか? 答え スタートメニュー(全体) C:\ProgramData\Microsoft\Windows\Start Menu 変更 […]

【php】Cannot execute queries while there are pending result sets

問題 MySQLに接続して、SQLを実行する処理をいくつか実行していると、突然こんなエラーが出ます。何が起きているのですか。 PHP Fatal error: Uncaught PDOException: SQLSTAT […]

MySQL8.0で PASSWORD()の代替関数

問題 MySQL8.0では、PASSWORD()関数がなくなっています。 MySQL5.7以前のPASSWORD関数と同じ結果を得る方法はないですか? 答え 別の古いMySQLに接続できる場合 古いMySQLに接続してP […]

RHEL9でphp5.6をインストールしたい

問題 OSはRHEL9互換(Rocky Linux 9 など)で、php5.6をインストールしたいのですが、remiリポジトリなどではphp7.4以上しか提供されていないようです。 php5.6はインストールできないです […]

Let’s encrypt の暗号化方式がECDSAになっていた

問題 Let’s encrypt で証明書を取得したら、秘密鍵が見慣れない形式になっていました。 妙に短いです。 RSA方式ではなさそうです。古い環境で使えない。 なんでしょう? 答え Let’s […]

Bootstrap5をカスタマイズしたい

問題 Bootstrapの色を変えたり、行間を変えたりしたいです。 答え Bootstrapの見た目を変える方法。 CSSを書けば済むパターン CSS変数で対応できるものは以下でよい。 :root { --bs-font […]

composer のバージョンと対応phpバージョン

composer2.2まではphp5.3以降がサポートされている。 composer2.3以降はphp7.2.5以降が必要。 composer はphpで書かれている。実行権限をつけて実行すると phpとして実行される。 […]

FormのデータをaxiosやjQuery.ajaxで送信する

問題 画面上のHTMLのformの内容をajaxで送信したいです。 答え axiosやjQuery.ajaxは送信するデータにFormDataを渡してやるとフォームの内容を送信してくれる。 ファイルも送信できる。 例) […]

PDFファイルにタイムスタンプを付与する(Acrobat)

問題 PDFファイルにタイムスタンプの付与をするにはどうするとよいですか。 答え Acrobatはタイムスタンプを付与できます。 Acrobat Reader も同様。 タイムスタンプサーバーの設定 タイムスタンプはいつ […]

【PhpSpreadsheet】Spreadsheet objects cannot be serialized

問題 PhpSpreadsheetでシートをコピーしようとしたらエラーになりました。 既存のシートを clone したタイミングで出てます。 Spreadsheet objects cannot be serialize […]

【PhpSpreadsheet】テンプレートからシートをコピーして増やす

問題 PhpSpreadsheetで、既存のExcelをテンプレートにして、ひな形のシートをコピーして新しいExcelを作りたいです。 新しいワークシートを作って、元のワークシートからコピーして addSheet() す […]

node, npm のインストール

問題 node, npm の新しめのをインストールしたい。 yumやaptでインストールするとバージョンが古い。 どうすればよい? 答え Prebuild Binary として配布されているものは置けば動く。 ダウンロー […]

error: Autoconf version 2.68 or higher is required

問題 古いLinux環境で、xdebugをコンパイルしようとしたら以下のエラーになりました。 # phpize Configuring for: PHP Api Version: 20190902 Zend Module […]

【openssl】ee key too small のエラー

問題 証明書を使ったSSL通信で以下のエラーが出ます。 ~ could not load PEM client certificate, OpenSSL error error:140AB18F:SSL routines […]

【Javascript】Data URLとBlobの相互変換、ダウンロード

Data URLをBlobに変換 URLをfetchで取得する。 let dataUrl = "data:image/png;base64,~~~base64エンコードしたバイナリ~~~" fetch(dataUrl) […]

【php-fpm】遅い処理を特定する

問題 php-fpm の処理がなんだか重そうなのですが、遅い処理を特定できるでしょうか。 答え slowlog 遅いリクエストの記録を有効にする。 以下のような設定ファイルに、 /etc/php/8.2/fpm/pool […]

Windowsで利用できるSSHクライアント

問題 Windowsでsshしたいですが、何を使えばよいですか。 答え TeraTermなど定番ソフトがありますが、Windows自身もopensshの機能を追加できるようになって、sshコマンドができるようになるなど、 […]