2023-05-01から1ヶ月間の記事一覧

スマホ買うなら、セキュリティアップデート保証期限を気にしよう!

pixel 3a 使ってますが、2022年の春に保証期限が終了してました。。。 とはいえ、次買うのは、ストレージの容量的には、2024年の夏になるだろうなと。 Google Pixel のアップデートが提供されるタイミング 5a を次は、購入しようと考えていましたが、アップ…

SQL:SELECT 構文

データ検索 SELECT 構文は、指定した「列のデータ」を操作する。 SELECT <列名> AS <別列名>, ...:指定した列名に別名をつける $ SELECT COUNT(id) AS number FROM entries; 日本語は、"" をつける $ SELECT COUNT(id) AS "応募数" FROM entries; SELECT DI…

MySQLとSQL

MySQLは、3段階層になっている Database -> Table -> Data SQL構文 予約語/関数は、大文字で書く。 特定の予約後の後は、改行する。 SELECT, FROM, WHERE, GROUP BY, ORDER BY 1,2 に関してだが、書き方を統一するのが大切。 SELECT name FROM companies; or…

Devcontainer:VSCode と Dockerコンテナを同期して、実行やデバッグをしやすくする

Devcontainer は、VSCodeの拡張機能。 VSCodeで、「>< Remote Development」をインストールする。 Remote Developmentの設定は、「.devcontainer/devcontainer.json」で行う。 .devcontainer/devcontainer.json の中身(PHP, apache) { "name": "何でも良い…

docker-compose:操作

$ docker-compose up:コンテナの作成と起動を一度に実行するコマンド - dオプション:バックグランドで起動する(detach) --build:イメージからビルドし直す。 $ docker-compose upは、イメージが作成されていない場合、イメージの作成からビルドされるが…

PHP:クラスを使ってみたpart4

/* 2. "a" を 1、"b" を 2、...、"z" を 26 として、文字列を数列に変換します。この数列を A($baseArr) とします。 3. 数列 A の隣り合う 2 つの数を足して前から順番に並べた新しい数列 A' を作り、これを新たに A とします。 このとき、A の要素の大きさ…

電気毛布は、不要だった。。。普通の布団で十分

※注意:このブログは、主にプログラミング関連を書きますが、今回のように それとは無関係のことも書きます。 電気毛布じゃなくて、普通の毛布で十分だった() 2022/11 に暖房の節約、冬の寝ている時の寒さ対策 として、電気毛布を購入したけど、結論、不要だ…

docker-compose.yml:書き方

docker-compose メリット:マルチ(複数の)コンテナ環境を同時に構築できる! インデントは、半角スペース2つ分 varsion: "3" # docker compose のver を指定する。2023/5時点は、3系が最新なので、3としとけば良い。 services: # services 以下に、コンテナ…

Dockerfile:FROM, RUN COPY, ENV, WORKDIR, ENTRYPOINT

DSL:Docker独自の言語 Dockerfileに、インストラクション(命令)を書く。 Dockerfileの上から順に、実行されていく。 * インストラクション:FROM, RUN, CMD, etc. FROM Dockerfile の一番上に記載する。 Dockerイメージのベースになるイメージを指定する。 …

PHP:クラスを使ってみたpart3

思ったより時間食った。。。まあ、しゃーなしやな。勉強勉強!そして進化しているのは分かるから良き!!! 今回の成長ポイント: __construct() の新しい使い方。 __constrcut()の前に、変数を宣言して使う方法。 private array $cards;:class Cards でも…

docker-compose.yml:volumesについて

volumes とは dockerコンテナの中にある「保存領域(ストレージみたいな)」。 コンテナが削除されたら、その中身全てが削除される。ただ、データベースのデータを残したい場合に、volumes にデータを保存するようにすることで、それを叶える。 また、ホスト…

PHP:クラスを使ってみた part2

メソッドの中で、同じクラスの別のメソッドを呼ぶ時は、$this->が必要!という学びがあった。 3つのクラスを1つのクラスで呼び出せるように、書き直した! 2つの円の中心の座標を (xc, yc)、半径をそれぞれ r_1, r_2 (r_1 < r_2) とします。 暴風域にいる条…

PHP:クラスを使ってみた

そろそろ関数は慣れてきたので、「クラス」を使い慣れたいなと思い、わざわざ遠回りして、クラスを作って、使い、答えを出してみた。 最初の解答で分かったこと、 クラスのスコープ外にある、foreach のなかで、class CalSumが元になる インスタンス を作成(…

PHP:配列を2つ用意して、ブラウザのページ遷移の仕組みを真似てみた。

今回のネックは、 戻るボタンを2回以上押して、他のページに飛び、 また、戻るボタンを押した時のページ遷移先を表現すること 上記の問題を解決するのに、配列を2つ用意した。 イメージ:末尾が現在地 1回目: $result = [1, 2, 3, 4, 5, 6] $result2 = [1, …

PHP:配列の最初のkeyを取り出す、配列の最初と最後の要素を取得。

array_key_first:配列の最初のkey を取得する $keys = array_key_first($rainAll); reset(), end() :配列の最初と最後の要素を取得。 reset($resultDays) . ' ' . end($resultDays); getSumRain():ここが成長を感じた点 平均降水確率を作成する際、合計の…

PHP:DFS関数、深さ優先探索

競プロで、ロジックの勉強してるときに、分からなくて色々調べたら、 タイトルにある、DFS関数にたどり着いた。 深さ優先探索 というワードの意味が、いまいちピンとこなくて、他のないのかな〜って思うけど、そこが味噌ではないから、まあ、ええかと。。。 …

Docker: ERROR [internal] load metadata for docker.io/library/unbuntu:22.04

$ docker image build -t practice/apache:latest . 上記のコマンドを実行した。けど、タイトル通りのエラーがでた。 ERROR [internal] load metadata for docker.io/library/unbuntu:22.04 これは、単純に、タイポ(スペルミス)でした。。。 unbuntu ではな…

PHP:php -r コマンド

$ php -r XXXは、どういう意味か?と疑問に思い、ChatGPTに質問したところ、以下の回答が出てきて、スッキリしました。ググってだめならChatGPT すると欲しい回答が出てきたりしますね。 php -r オプションは、PHPのコマンドラインモードで、 1行のPHPコード…

PHP:ある配列に対する処理を繰り返したい。

前回もそうだったが、処理は、できたけど、その処理を与えられた回数分繰り返す必要があった。 ただ、ループ後に、変数名が異なって、最初の処理に戻るときに、処理したい配列が、初期化されていた。 やりたいこと 1連の処理を終えた後、その配列に再度、同…

Docker 基本:Dockerfile、コマンド、オプション、OS(Ubuntu)など

Docker ・docker engine:docker client と docker デーモンを組み合わせたもの ・Dockerfile をもとにイメージを作成する ・build:イメージを作成すること $ docker image build -t hello:latest . * -t => タグ付け を意味する。あとで呼び出すときに楽に…

PHP[配列]:最小、最大値のkey を取り出す。最小値を先頭に持ってくる、かつ、先頭を末尾に回す。最小値を配列から削除

// 最小値のkey を取り出す関数 $minKey = array_keys($arr, min($arr))[0]; // 最大値のkey を取り出す関数 $maxKey = array_keys($arr, max($arr))[0]; // 最小値を先頭に持っていった後の配列を作る関数。先頭は、末尾に回る。 array_merge(array_slice($…

Git:rebase , squash, タグ

git rebase コマンド リベースコマンドを実行すると、コミットの履歴をキレイに整えることができる。 例、コミット1 を親に持つ、コミット2, コミット3 があるとする。 ・コミット2:ブランチ名:main ・コミット3:ブランチ名:feature $ git branch featur…

メモの取り方

メモの取り方 やりたいこと エラー内容 参考文献 原因 解決策 の順に構造化してメモを取るとよいそう。 参考文献は、最後に持ってきてもよいかなーと思ったり。

PHP:二次元配列のサブ配列の値を置換して新しい配列を作る。

// 回答者の数、設問の数 list($numOfPeople, $numOfQue) = explode(' ', trim(fgets(STDIN))); $arr = []; for($i = 0; $i < $numOfPeople; $i++) { $arr[] = explode(' ', trim(fgets(STDIN))); } // var_dump($arr[1][0]); // string型 $newArr = []; // …

Git:コンフリクト, pull, switch, GitHub のプルリクエスト

git コンフリクト <<<<HEAD <p>こっちが、今いるブランチの内容</p> ===== <p>こっちが、統合しようとしているブランチの内容</p> >>>>>feature 取り込みたいのを残して、それ以外を削除すれば良き。 git pull 際の注意点 git pullをする際は、pull するブランチと同じブランチに…

git fetch と pull の違い

git fetch fetch は、リモートリポジトリから、ローカルリポジトリにデータを引っぱってくる こと。 そして、自分の作業場である、ワークツリーに fetch したデータを反映したい場合は、 git merge origin/mainのように merge コマンドを打たないといけない…

Git コミットの流れ:Git commit, Vim

git commit -> vim -> 「esc」-> 「:x」 git add <ファイル名>を実行した後、git commit <ファイル名>を実行。 すると、以下の画面に遷移します。 この画面に遷移したら「 i 」を押します。すると文字を入力できるようになります。 入力が終わったら、 「esc…

独学エンジニア:レッスン19-2:Docker build エラー 404 [Mac OS:Ventura, Ubuntu:21.10]

2023/5 時点 独学エンジニアで、プログラミング学習をしている。 タイトルのエラー解消方法について、状況とその解決までの流れをメモしていく。 環境 Mac OS:Ventura 13.3.1 Ubuntu:21.10 $ docker-compose build エラー↓ Updating package list and upgra…

PHP:上下左右の比較、降順に並べ替える

$n = (int) trim(fgets(STDIN)); // $n = 1 なら、次の行の値を出力して、終わり if ($n === 1) { echo trim(fgets(STDIN)); die(); } // 行の配列(1.) $arrRow = []; for ($i = 0; $i < $n; $i++) { $arrRow[$i] = explode(' ', trim(fgets(STDIN))); } // …

PHP:array_count_values, in_array,

ポイント1:縦向きの配列に変更する方法 $arrColumn = []; for($i = 0; $i < $sizeN; $i++) { foreach ($arr[$i] as $key => $value) { if (!isset($arrColumn[$key])) { $arrColumn[$key] = []; } $arrColumn[$key][] = $value; } } if (!isset($arrColumn…