PHP
PHP 7.4 からアロー関数 (Arrow Function) が使えるようになっていたので触って見たメモ Arrow Function 書式 fn(argument) => expr JavaScript のアロー関数との違い fn キーワードが必要 処理部分は { } で囲ったブロックが使えない 文末の ; は必須 $x +…
PHP の ksort や array_filter を使っていて整数キーを与えた配列をループさせた際のインデックスで少し戸惑ったのでメモ 環境 PHP v8.2.0 tehplayground.com 環境でテスト PHP の配列のキーとインデックスは同じ整数でも別物 配列 key は、整数 または 文字…
PHP で順番がランダムで渡される配列から特定の要素を特定の順番に移動させた配列を作成したい 環境 PHP 8.2.0 要件 順番がランダムになる ['Mizuki', 'Mikuru', 'Aoi', 'Ichigo', 'Otome', 'Yurika', 'Ran', 'Kaede'] という配列があり、先頭を固定して ['I…
JavaScript だと map などのコールバック関数の外にある変数にアクセスするのは言語仕様上問題がないが、PHP ではスコープ外となってしまった JavaScript const val = '☆'; const array = ['ハナ', 'シオリ', 'ルリ', 'ビート']; const result = array.map((…
PHP の配列操作で array_map を使う時に index を使う方法 array_map のコールバック変数に index の配列を渡す array_map(?callable $callback, array $array, array ...$arrays): array array_map() returns an array containing the results of applying …
前回 PHP の型宣言が暗黙の型変換をしてしまってそんなものかーと思っていたのですが、厳密にするオプションが有ることを教えてもらったので記録に残しておきます。 環境 PHP v.8.1.2 (onlinephp.io で実行) declare(strict_types=1); 宣言を行うと厳密な方…
オプショナルな引数の初期値を設定した関数の作成は、関数の仮引数に 型宣言 + デフォルト引数に `null` を設定して、null 合体演算子を使ってデフォルト値を与えるのが良さそう
WordPress で OGP の情報を出力するには All in One SEO などのプラグインを使えば実現できるのですが、WordPress からしばらく離れていたこともあり WordPress 独特のプラグインが GitHub にない場合も多くスター数やどれが現段階でのベストプラクティスな…
wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), $size ); で画像の URL を取得するのが良さそう
Contact Form 7 の DOM をカスタマイズする時は wpcf7_form_elements フィルターを使えばOK
こちらの Laravel の環境をつくる勉強会に参加してしました。localで作った環境を さくらのレンタルサーバー にアップするというものだったので、ssh でサーバーに入って直接環境を作れないか試して見たメモ ssh でさくらのレンタルサーバーに接続する方法は…
構成 /-- docker-compose.yaml |- /docker | |- /php | |- /nginx | |- /mysql | |- /data # MySQLのデータの永続化 |- /laravel # Laravel アプリがインストールされるディレクトリ 使い方 https://github.com/KiKiKi-KiKi/docker-laravel からコードをDLし…
フロントを React バックエンドを PHP で作成していて、ファイルのアップロードを試してみたのでメモ File を扱うコンポーネント React では、<input type="file" /> は値がユーザだけが設定できるものでありプログラムでは操作できないため、常に非制御コンポーネントです。 cf. …
PHP で変数のデフォルト値を設定したい時 false の場合デフォルト値を使う 'default' $var = false ?: 'default'; // => 'default' $var = 0 ?: 'default'; // => 'default' $var = '' ?: 'de…
Docker 一年生なので、雰囲気で作っています。 構成 /-- docker-compose.yml |- /web | |- /html … web root |- /mysql | |- Dockerfile | |- my.conf | |- /init | |- 1_dd.sql … DB 初期化 |- /nginx | |- nginx.conf | |- /log | |- access.log | |- erro…
Content-Type application/json で送られてくるデータを生 PHP で取得する場合のメモ フレームワーク使ってたら、この方法を使うことは無さそうだけど、メモとして… こんな感じのフロントから送られるデータを扱いたい const data = { email: 'example@examp…
$_POST や filter_input でデータを取得しているようなPHPのバックエンドにフォームデータを axios で送信する時 Content-Type を application/x-www-form-urlencoded にするだけでは上手くいきません。 ♀️ Content-Type: application/x-www-form-urlencode…
PHP で FastRoute を使って API のモックを作っていていました。 cf. GitHub - nikic/FastRoute: Fast request router for PHP addRoute('GET', '/api', 'handler'); }); // Fetch method and URI from somewhere …
旋回までのあらすじ Docker で作った PHP 環境で composer を使おうとしたら入ってなかったので使えるようにしたメモ docker-compose.yml version: '3' services: api: build: context: ./php dockerfile: Dockerfile volumes: - ./api:/var/www depends_on:…
インフラ知識皆無なので Docker は雰囲気で使っています。 構成 / |- docker-compose.yml |- /api |- /frontend | |- Dockerfile |- /mysql | |- /data | |- /init | | |- 1_ddl.sql | |- Dockerfile | |- my.cnf |- /nginx | |- nginx.conf |- /php |- Dock…
バグ踏みの達人です。 PHP から MySQL のデータを更新しようとして珍しいバグを踏んだのでメモ 何故かエラーになる あるテーブルに次のようなコードでデータを入れようとしたらエラーになりました。
久々に PHP 書いてます。 なんも覚えてねぇ… PHP は定数は文字列展開できない。 PHP " (ダブルコーテーション) な文字列なら下記のように変数を文字列展開できるかと思います。 "INSERT INTO users (id, name …)"; 定数は展開されない… …
Mac OS Catalina にアップデートして Composer を使おうとしたら動作しなくなっていました… ( Catalina 開発トラブル多すぎない?) PHPを再インストールしたら動くという情報を目にしたので、折角なので phpenv でインストールをしようとしたのですが、永遠…
PHP7.3のバグphp.iniでコメントアウトされてる `;pcre.jit=1` を `pcre.jit=0`として有効にすればOKっぽい。(今の所...
php.iniを開いてdefault_socketをチェックしよう。WordPressはmysqli.default_socketが設定されてないとデータベース接続確立エラーになるみたい。
※ この記事は古いWordPress (v4.1)を触っていて発生した現象なので、新しいWordPress環境では発生しない可能性があります。
WordPress管理画面の上部にあるAdmin barにカスタムボタンを設置する方法のメモ functions.php 'my_custom_button', 'title' => '表示される文字', 'href' => '#', 'meta' => [ 'class' => '' ], ]; $wp_admi…
別の人が作成した古いWordPressの改修の依頼が来て、環境つくりに時間がかかったのでメモをしておきます。 レンタルサーバーで動いているサイトだったのでPHP + Apache + MySQLという構成です。 要件
PHP製の管理ツールで、CSVを生成してDLするシステムを作っていました。 データ量が多いとエラーになるということで調べたら、PHPのmax_input_varsにかかって居るのが原因でした。 そして、使っているサーバーがhetemlでmax_input_varsの上限を変えることが出…
WordPressのカスタムフィールドで作っていたテキストエリアで部分的にボールドにしたいという要望がありました。 運用してる人的にHTML書いてくださいってのはハードル高そうだし、カスタムフィールドをWYSIWYGにするのは工数もかかるし自由に出来すぎるとwo…