php
概要 php(PDO) + postgresql の生SQLを実行時に Invalid parameter number: mixed named and positional parameters が発生。 原因、postgresqlのjsonbの演算子などではよく「?」を使うことがあるが、これと、phpのPDOのプリペアドステートメントの「?」(疑…
概要 Laravelで、DBテーブルの取得結果を、特定のカラムをキーとして取得したい場合、調べるとpluck()がよくでてくる。 ただ、KeyBy()でもできる。 QueryBuilderなどではget()などでいったん取得してきておいて、後から加工するほうがいいケースもありそうな…
状況 Laravelのunittestで強い依存のあるメソッドをテストしたい。 また、強い依存のあるメソッド内で、あるメソッドが一度も呼ばれないこと をテストしたい。 class Foo { public function bar($isCallSituation) { //... 中略... if ( $isCallSituation ) …
概要 php純正のフィルター【convert.iconv.ほげほげ】を使うと簡単。ただし、注意点もある。 例 header('Content-type: application/csv'); header('Content-disposition: attachment; filename=sample.csv'); $dataArray = ['ひとつめ', 'ふたつめ', 'みっ…
題名通りです。 無名関数のuseに渡す値を参照渡しにしないと、毎回値がリセットされてしまうようです。 例として、まわりくどいですが、配列の重複を削除する方法。 array_unique使えばええやんというツッコミはなしで $target_array = [1, 2, 3, 4, 5, 2, 4…
DockerFileで以下内容を記述 ...なんやかんや RUN apt install -y php8.1-xdebug ...なんやかんや (DockerFileのお作法的には、他のapt installしているものと一緒にまとめるべきですが、そういうのは動いてから調整すればいいと思うので) コンテナのphp.i…
前提 既にubuntu20.04+php8.0+apache2の環境であること 作業手順 apt update apt upgrade -y apt install php8.1 apt install php8.1-gd php8.1-xml php8.1-soap php8.1-mbstring php8.1-mysql apt install libapache2-mod-php8.1 a2dismod php8.0 a2enmod …
覚書。 file_get_contents()を使用しているローカルスコープに、 $http_response_header が作成されるので、その中身を見る。 $result = file_get_contents('https://hogehoge...'); if (empty($result)) { var_dump($http_response_header); // 参考コード…
1. メソッド名の動的生成はダメ絶対 例) $methodName = 'aiueo'; if ($parameter == 1) { $methodName .= 'Ver1'; } else { $methodName .= 'Ver2'; } $methodName(); 理由) 影響範囲調査するときなどでgrepでひっかからずに漏れる。そして致命的エラーに…