これはメモです

それ以上でもそれ以下でもないのです

Laravel10でlaravel-langを使って日本語化する

Laravel勉強中の身なので何もわかりませんがメモ。 sailを使用している前提です。またコマンドはすべてプロジェクトルートで実行する想定です。 config/app.phpの言語設定を日本語に変更 - 'locale' => 'en' + 'locale' => 'ja' 'fallback_locale' => 'en'に…

PHP CSVの1行目をキー、2行目以降を値にした連想配列を作りたい

PHP

例えば以下のようなCSVデータがあって、 "name","email" "Sato Asuka","satoasuka@example.com" "Goto Yousuke","yousukegoto@example.net" "Fujita Takahiro","takahiro_fujita@example.org" 下記のような形にして扱えるようにしたいということです。 'Sat…

PHP シングルクォーテーションとダブルクォーテーションの違いにハマる

PHP

悔しいので備忘としてメモ。 以下のような文字列の改行をhtmlの<br>に変換したくnl2br()を使用したものの、 もともとあった改行が削除されない。 などで入力されたテキストとお考えください $text = <<<EOL あいうえお かきくけこ EOL; var_dump(nl2br($text, false)); 出力 string(35) "あいうえお<br> かきくけこ" これではhtmlとして表示された際に余分なスペ</eol>…

$wp_queryをブラウザコンソールに出力して簡易デバッグを行う

WordPressのデバッグに便利な'query monitor'というプラグインがある。 ja.wordpress.org 有用なのだが、ブラウザの開発者ツールと合わせて開くと画面を占領してしまうという難点がある。 また、知りたい情報に対して情報量が多すぎると感じる場面が多い。 …

PHP URLをいい感じに分解する

WordPressで、月別アーカイブのパーマリンクを下記のように書き換えたいケースに遭遇した。 // これを https://example.com/2022/11/?post_type=cpt // こう書き換えたい https://example.com/cpt/date/2022/11/ 「URLは'/'で区切られてるからそれでexplode(…

MAMP環境でMySQLのパスを通す

ほぼ参考サイトと同じですが、メモ。 手順 ルートディレクトリに移動 .bash_profileの作成、パス書き込み パスの反映 パスが通っているかテスト 1. ルートディレクトリに移動 cdだけ入力するとルートに移動。 cd 2. .bash_profileの作成、パス書き込み viで.…

PHP FETCH_ASSOCのASSOC is 何

PHP

ASSOCは連想配列のこと。 連想配列は英語で'associative array'。DBの値を連想配列としてfetchするための指定。 参考 連想配列 - Wikipedia

MySQLでデータベースを作成する

環境 M1 Mac MAMP MySQL 5.7.34 1. データベース作成 instrumentsという名前のDBがなければ作成する。(ある場合は何もしない) 文字コードはutf8mb4、照合順序はutf8mb4_general_ciに設定する。 CREATE DATABASE IF NOT EXISTS instruments CHARACTER SET u…

npmでモジュールをdevDependenciesからdependenciesに変更する

npm

インストールし直す方法しか知らず面倒だったので調べました。 devDependenciesからdependenciesに npm i <module_name> -P npm i <module_name> --save-prod 「productに使用するのでP」と考えると覚えやすい。 dependenciesからdevDependenciesに npm i <module_name> -D npm i <module_name> --save-dev 環境構</module_name></module_name></module_name></module_name>…

ESLint Parsing error: "parserOptions.project" has been set for @typescript-eslint/parser. エラー

ViteでTypeScript + React + ESlint(airbnb) の環境構築をしている際に遭遇したエラー。 環境 M1 mac Monterey 12.4 node v16.13.0 npm 8.1.0 VSCode エラー内容 .eslintrc.jsおよびvite.config.tsで下記エラーが出る。 Parsing error: "parserOptions.proje…

ESLint Parsing error: "parserOptions.project" has been set for @typescript-eslint/parser. エラー

ViteでTypeScript + React + ESlint(airbnb) の環境構築をしている際に遭遇したエラー。 環境 M1 mac Monterey 12.4 node v16.13.0 npm 8.1.0 VSCode エラー内容 .eslintrc.jsおよびvite.config.tsで下記エラーが出る。 Parsing error: "parserOptions.proje…

ESLintの"JSX not allowed in files with extension '.tsx'"エラー

拡張子が'.tsx'のファイルではJSXは許可されないというエラー。 github.com .eslintrc*ファイル内のrulesに拡張子を追加することで解消できる。 rules: { + 'react/jsx-filename-extension': [ + 'error', + { extensions: ['.js', '.jsx', 'ts', 'tsx'] }, …

フロントエンドツールの公式サイトリンク集

公式を見ながらひとつひとつ設定していくのが最も理解が深まると思うのでメモ。 Vite ja.vitejs.dev ESLint eslint.org React フック用プラグイン https://ja.reactjs.org/docs/hooks-rules.html#eslint-plugin 'React' must be in scope when using JSX エ…

aria-expandedの紐付けについて

最近ハンバーガーメニューを実装する時などにaria-*属性を使用することがあり、下記のように記述していた。 <div class="hamburger"> <button type="button" aria-expanded="false" aria-controls="js_menu">ボタン</button> <div id="js_menu" aria-hidden="true"> </div> </div> 気を付ける部分として、 aria-expanded属性は開閉を制御する要素(つまりbutton)につける aria-contorls属性で…

tabindexの初期値について

divなどの通常フォーカスできない要素にJavaScriptでフォーカスを持たせる場合、tabindex="-1"を指定することがある。 ふと気になってtabindexのデフォルト値が何なのか調べてみた。 console.log(document.createElement('div').tabIndex); // -1 console.lo…

PHPで連想配列の値が空か判定する

PHP

ちょっと詰まったのでメモ。 $arrayとかisset()で判定できるのかなと思いきや出来なかった。 '', 'elm2' => [], ]; var_dump(!$array); // false var_dump(!isset($array)); // false 調べたところ、array_filter()の第二引数(コールバック関数)を省略す…

MAMPのMySQLでrootパスワードを再設定する

rootを「パスワード設定なし」にしたらエラーでMySQLに接続できなくなり再設定したのでメモ。 接続できません。設定が無効です。 mysqli::real_connect(): (HY000/1045): Access denied for user 'root'@'localhost' (using password: YES) MySQL サーバに接…

create-react-app/TypeScriptの環境構築

create-react-appの環境構築を効率化するため、備忘としてメモ。 大岡由佳 著 りあクト!【I.言語・環境編】【II.React基礎編】第3.1版を参考に行った。 こちらの書籍ではパッケージマネージャーにyarnを使用しているが、普段npmを使用しているためnpmで作業…

オリジンについて

<link rel="dns-prefetch">について調べる際、オリジンという言葉が出てきたためメモ。 概要 オリジンとは、URLのスキーム(プロトコル)・ホスト(ドメイン)・ポートをあわせたもの。 スキーム、ホスト、ポートが一致していれば同一オリジンと言える。 関連する仕組みとして、同一オ</link>…

UI/UXについて少し勉強した

UXエンジニアに興味を持ってUI/UXの本を読んだので、特に覚えておきたい部分を備忘としてメモ。 デザインについて デザインとは 「デザイン=設計」。デザインとは見た目だけではなく、機能を有するもの。 デザインの目的 そのデザインが持つ機能や働きにより…

try ... catch についての学習メモ

JavaScriptのtry ... catchについて今まで使う機会がなく、何も知らなかったので勉強してみたメモ。 結論から言うと、エラーが発生した場合でも処理を停止させないという特徴があるようです。 // 未定義の変数iによりエラーが発生する // 通常の処理 const a…

同一のカスタムフィールド値を持つ投稿の前後記事リンクを出力する

前に一度やったことがあるが忘れていたのでメモ。 ぜろみやさんのブログでやってるの見たな…と思いつつ、まず自力でやってみようと思い実装しました。 以下ソース。

Google FontsのNoto Sans JPにfont-feature-settingsが効くようになってる

css

タイトルの通りなのですが、いつからかはわかりませんがfont-feature-settings: 'palt' 1が有効となり文字詰めを行えるようになってるみたいです。 See the Pen Noto Sans JP font-feature-settings テスト by saiko (@saiko1988) on CodePen. また文字詰め…

非同期で取得したデータがIE11で文字化けする場合の対処法

axiosでデータを取得後にDOM操作を行おうとしたところ、IE11のみ文字化けする事例があったのでメモ。 発生状況 axios: v0.21.1 IE11 Chrome, Firefoxでは起きず 以下のようにresponseType: 'document'を指定して取得したところ、IE11のみ文字化けが発生。 ax…

dl要素内のdivの使い方についてメモ

HTML5.2よりdl要素内でdiv要素が使用できるようになったのですが、誤解していた部分があったのでメモ。 単純に「dl要素の子孫要素としてdivが使える」と覚えておりdiv要素をdd要素のラッパーとして使おうとしていたのですが、HTML Living Standardに反する使…

配列に変換し、かつmapで処理する

Array.from()とArray.prototype.map()の組み合わせでもできますが、実はArray.from()だけでできます。 Array.from( '12345', i => i * 2 ); // [ 2, 4, 6, 8, 10 ] Array.from()の第2引数にはmap関数を書くことができるため、わざわざ別に関数を書かなくても…