2022-03-31T06:30:21.080Z
PHP
ssh2_scp_send()でパーミッション0777が設定できなかった話。
どもです。
PHPを使用してSFTP接続でディレクトリとファイルをパーミッション0777で設置。
$connection = ssh2_connect('192.168.00.00',
Eclipse(日本語UI)でタブキーを押したらスペースで入力される問題の修正
どもです。
会社のパソコンがイカれたので、新品に乗り換え。
すると、どうしても必要になるのがEclipseの初期設定。
この中でどうにも分かりにくかったのが、タブを押したときにタブでなくスペースで入力される問題の解決法。
日本語化されたEclipseだと、設定 ... 全文を読む »
[PHP]連想配列を合成するには array_merge() か $array + $array か
どもです。
2つの連想配列を合体させる場合、一般的に考える手段は array_merge($array1, $array2) だと思います。... 全文を読む »
ループ中でincludeを行うと、とても重いらしい。
配列の末尾ポインタが謎にズレた原因がforeachの参照渡しだった話。
UTC->JST 日時変換(TとかZとかついてる日時のやつ)
wkhtmltopdfで全角1字・半角0.5字で表示できなかったときの話。
どもです。
wkhtmltopdfで大苦戦したので備忘。
出力する文字数の制限がとても厳しいPDFの作成。
全角を1字、半角を0.5字とカウントし、○字×○行ピッタリに仕上げなければなりません。
こういう場合はMSゴシック(ド安定の印刷用フォント)やIPAゴシック(機種依存文字でちょっとズレる)などの等幅フォントを指定してやれば解決です。... 全文を読む »
文字列をUTF-8に変換、UTF-8BOMだったらBOMを取る。
某所からDLしたTSVファイルがさあ!
SJISだったりUTF-8だったりUTF-8BOMだったりころっころ文字セット変えてくるのよ! 断りなく!!
ということで、文字セットを判別してUTF-8に変換、UTF-8BOMだったらBOMを取るだけの関数備忘録。
function
長大な文字列でpreg_match()したらマッチするはずなのにマッチしない場合、backtrack_limitに抵触している可能性がある話。
どもです。
件名の通り、数MBの文字列をpreg_match()するというトンデモ行為をせにゃならず。
その結果、マッチするはずなのに「0」をreturnされてしまいました。
この原因が「バックトラックリミット」でした。という話です。
バックトラックリミットとは?
... 全文を読む »[PHP]受信したメールがMIMEエンコードされている場合。
[PHP]受信したメールの件名が文字化けしている場合。
どもです。
PHPにて、自身のサーバからメールを取り込んでなんやかんやする旧いシステムの改修を行っていました。
すると、届いたメールの本文が文字化けしておりました。
↓
条件によって条件式を変えたかった話。
ifで分岐させる二つの処理が9割共通する場合
PDOで大量のデータをSELECTしたらメモリリークになったので、非バッファモードで実行する。
どもです。
PHP7時代のMySQL利用といえばPDOですが、PDOを用いて大量のデータを取得しようとしたところ、メモリリークが発生しました。
MySQL-PHP-HTML の文字列保存・表示備忘録
どもです。
textareaやinputで自由入力できるようにすると、クォーテーションや特定のhtmlタグを入れたときに、処理や表示がバグったり、クロスサイトスクリプティングの被害に遭ったりします。
回避のための処理をいちいち調べるのも面倒なので、備忘的にまとめておくことにします。
PHP←→MySQL
//PHP→MySQL
PHPとjsで浮動小数点誤差問題と闘う
FTPに同名ファイルが無ければ新規作成、あれば追記
「PORT IP is not same as」されたらパッシブモードにしてみる。
array_search()やin_array()する前には、ちゃんとarray_map('trim', $array)するんだぞ!ってメモ。
どもです。
しょーもないことでハマったので備忘。
外部から貰ったCSVを取り込むのに、その項目が何列目にあるかをarray_search()で照合しようとしたら、特定の項目でfalse食らってしまったわけですね。
array_search()でやらかし易いミスといえば、
・第三引数にtrueを設定しないことで、文字列型と数値型の比較になってしまう。... 全文を読む »
file_get_contents()はhttpでないと持ち帰るものが変わってしまう?
どもです。
file_get_contents()に関する備忘録。
PDFを生成し、添付したメールを送信。そのためには作成したPDFをいちど取得しなければなりません。
しかし使用しているPDF作成ライブラリの仕様として、header()を変更してechoしてしまいます。
このため、include()でなくfile_get_contents()を使って生成データを「取得」することが求められます。... 全文を読む »