forget for get

覚えるために忘れる

PhpStormメモ

矩形選択:Alt+Shift+ドラッグ メソッドの呼び出し元へジャンプ:Alt+F7 右クリック→生成→テスト

PHPの列挙型(Enum)

test.php name; // Spades test2.php

Observerパターン

観察対象の状態が変化すると、通知する Subject(被験者):NumberGenerator Observerを登録・削除するメソッド、現在の状態を取得するメソッドをもつ具体的なSubject:RandomNumberGenerator 状態が変化したらObserverに伝えるObserver(観察者):Observer…

Vue CLIチュートリアル

https://cli.vuejs.org/guide/prototyping.html Docker環境構築 https://cli.vuejs.org/guide/prototyping.html を参考に Dockerfile FROM node:16 #ENV http_proxy http://xxx:3128/ #ENV https_proxy http://xxx:3128/ WORKDIR /app docker-compose.yml※co…

プロキシ下でのVagrant,Docker環境構築で色々ハマる

Vagrantfile if Vagrant.has_plugin?("vagrant-proxyconf") config.proxy.http = "http://xxx:3128" config.proxy.https = "http://xxx:3128" config.proxy.no_proxy = "localhost,127.0.0.1,aaa,bbb" end プロキシ設定するプラグインを入れてからvagrant up…

LaravelMixチュートリアル Vue.js導入まで

LaravelMixを使ってみようとしたけど、Laravel公式のドキュメントだと全然わからず、、 https://readouble.com/laravel/8.x/ja/mix.html LaravelMix公式のドキュメントを見ることに。 https://readouble.com/laravel/8.x/ja/mix.html 事前準備 Laravel + Doc…

docker-composeでLaravel環境構築(PHP/nginx/MySQL)

これを参考に 【超入門】20分でLaravel開発環境を爆速構築するDockerハンズオン https://qiita.com/ucan-lab/items/56c9dc3cf2e6762672f4 ディレクトリ・ファイルを作成 ディレクトリ構成 laravel_docker/ docker-compose.yml docker/ php/ Dockerfile php.i…

Vue.js axiosを使ったサンプル

配列を更新するとき、 app.gachaResult = response.data では表示が更新されなくて、 app.gachaResult.splice(0, app.gachaResult.length, ...response.data) 配列のメソッドで更新しないとリアクティブに更新されない。 <html><head><meta charset="utf-8"/></meta></head></html>

VueRouterチュートリアル

https://router.vuejs.org/ja/guide/ VueRouterの「基本的な使い方」を見ながらサンプルをつくってみた。 <html><head><meta charset="utf-8"/></meta></head></html>

Vue.jsチュートリアル

https://jp.vuejs.org/v2/guide/index.html Vue.jsの「はじめに」を見ながらサンプルをつくってみた。v-ifとv-on:clickで表示切替、キャラ一覧はv-forとcomponentの2パターンで試してみた。 <html><head></head></html>

DockerでPHPからMySQLに接続してみる

Dockerfile FROM php:7.4-apache RUN docker-php-ext-install pdo_mysql COPY src/ /var/www/html/ src/my.php '; try { $dbh = new PDO('mysql:host=mysql_1;dbname=test', 'root', 'root123'); foreach($dbh->query('select * from users') as $row) { ech…

GitExtensionsでリモートリポジトリのパス変更

サーバー移行でリモートリポジトリのURL(ドメイン、パス)が変更になった場合のGitExtensionsの設定変更 メニュー>リポジトリ>リモートリポジトリ>URL

Dockerチュートリアル

Dockerチュートリアル https://docs.docker.jp/get-started/part2.html サンプル Dockerfile # 親イメージとして公式イメージを使う FROM node:current-slim # 作業用(working)ディレクトリを指定 WORKDIR /usr/src/app # ホスト上のファイルを現在の場所…

dockerコンテナが起動しない

WARNING: Host is already in use by another container ERROR: for api Cannot start service api: driver failed programming external connectivity on endpoint docker_api_1 (e819fe...): Error starting userland proxy: listen tcp4 0.0.0.0:80: bind…

.vimrcでエラー E254: Cannot allocate color 7

いつものように~/.vimrcを編集してvimを起動したらエラーが出た E254: Cannot allocate color 7 バージョンによっては7なんて色はないらしい。LightGrayに変更して解決。 ~/.vimrc highlight SpecialKey cterm=NONE ctermfg=7 guifg=7 highlight JpSpace cte…

foreachで参照渡しで値を変更するとバグる

foreachで参照渡しで値を変更するとバグる $vals = [1,2,3]; foreach ($vals as &$val) { $val *= 2; } echo json_encode($vals); //[2,4,6] foreach ($vals as $val) { echo $val . ','; } //2,4,4, 何が起こっているか $vals = [1,2,3]; foreach ($vals as…

Dockerまとめ

公式ドキュメント https://docs.docker.com/ https://docs.docker.jp/ (日本語版) インストール CentOS8 Docker/Docker Composeインストール https://qiita.com/chenglin/items/8e13e7ad45cc9bae264a 記事リスト docker-composeでLaravel環境構築(PHP/nginx/…

WinMergeでワード、エクセル、パワーポイントの差分を見る

WinMergeでOfficeファイルのテキスト差分を見る gitやsvnでWord, Excel, PowerPointなどのOfficeファイルを管理していると、変更があっても、どこが変更されたのかわからず、確認が面倒。 WinMergeのプラグインを使うと、Word, Excel, PowerPointなどからテ…

よく使うLinuxコマンドまとめ

pwd cd cd /var/www/html cd ../../Models ls-l: 詳細 -a: 隠しファイルも表示 -t: 更新時間で並べ替え ls -alt mkdir mkdir new_dir cp-a: 所有者、パーミッション、更新時刻などなるべくそのままコピー cp -a aaa.php bbb.php mv mv aaa.php bbb.php mv aa…

GitExtensionsで削除されたリモートブランチが消えずに残ってる

結論:GitExtensionsの設定で「フェッチと共にリモートブランチをプルーン」を適用すると解決。(設定>Git>高度な設定) GitExtensionsでブランチ切り替えするとき、リモートブランチ一覧に削除されたリモートブランチが消えずに残ってる。JIRAでブランチを…

Builderパターン

Builderパターン 複雑なインスタンスを構築する。 Builderクラスが構築のためのメソッドを定義。 Directorクラスがそのメソッドを使ってインスタンスを構築する。 具体的な処理はBuilderクラスのサブクラスが決める。 DirectorはBuilderのメソッドのみを使う…

Factory Methodパターン

Factory Methodパターン インスタンスの作り方をスーパークラス側で定める。具体的な肉付けはサブクラス側で行う。 Product.php abstract class Product { abstract public function use(): void; } Factory.php abstract class Factory { final public func…

バッチファイル(.bat)のコメントアウト

バッチファイル(.bat)のコメントアウト ふつうは rem コメント でコメントアウトだけど、 : コメント でもいい。 こっちの方が楽。 参考:https://orangeclover.hatenablog.com/entry/20101029/1288364190

PHP エルビス演算子(?:)とNull合体演算子(??)

呼び方を忘れるので。 エルビス演算子・三項演算子(?:) $a = $b ?: 0;$bがTRUEだったら$b、違ったら0。「$b ? $b : 0」と同等。 Null合体演算子(??) $a = $b[0] ?? 0;$b[0]がNULLじゃなかったら$b[0]、NULLだったら0。 「isset($b[0]) ? $b[0] : 0」と同…

FlatBuffersチュートリアル(日本語)PHP

公式ドキュメントが英語で、日本語の情報があまりみつからないので、やってみてまとめます。公式チュートリアルは1ファイルで書き読みやってるけど、今回は書き・読み2ファイルに分けます。 FlatBuffersとは Google社が開発しているクロスプラットフォーム対…

WindowsアップデートしたらVM(VirtualBox、Vagrant)が起動しなくなった

結論から書くと、 WindowsアップデートしたらVMが起動しなくなった。 Windowsアップデートでホストオンリーアダプタが消えてしまったのが原因。 Virtualboxを起動して、「ファイル」→「ホストネットワークマネージャー」で 既存の設定を「x除去」、新規で「+…

Oculus Quest2+Virtual Desktop+WiFi6でPCVRを無線で体験

事前準備 こちらを参考に。 【OculusQuest】無線でPC版のVRが体験できる!Virtual Desktopの使い方 | CGメソッド PCにSteam、SteamVR、Virtual Desktopをインストール。 クエストにVirtual Desktop(有料)をインストール。 SideQuestからクエストにVirtual …

mysqlからinsert文を出力

テストデータ入れたけど、migrationをやり直したい。テストデータ消えちゃう、insert文ほしいな、、というとき。 mysqldumpでinsert文のみダンプ(where句で条件指定) mysqldump -u username -ppassword --no-create-info dbname tablename -w "where_condi…

CodeIgniter3がPHP7.4だとエラーが出るのを解消

CodeIgniter3を使ってる環境をPHP7.4にしたらエラーが出た A PHP Error was encountered Severity: 8192 Message: Array and string offset access syntax with curly braces is deprecated Filename: libraries/Profiler.php Line Number: 108 Line Number:…

VSCODEでLaravelのFacadeもコードジャンプできるようにする

Laravelはファサードを多用していて、IDEでコードジャンプができない。laravel-ide-helperを使うと解決。 laravelにide-helperを入れる composer require barryvdh/laravel-ide-helper php artisan ide-helper:generate _ide_helper.phpが生成され、ここを経…