カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

JavaScriptでクエリ文字列をスマートに生成する

URLパラメーターとしてクエリ文字列を渡す際に、クエリ文字列をスマートに生成することについて考察してみました。

昔ながらのクエリ文字列生成方法

let params = "";
params += "a=b";
params += "&c=d";
console.log(params);

出力結果

a=b&c=d

この方法だと条件式によってパラメーターを追加していくって場合にはアンパサンド(&)が問題になってくるのでちょっと不便ですね。
それを単純に解消しようと思うと以下のようなやり方でしょうか。

const DATA = [];
DATA.push("a=b");
DATA.push("c=d");

console.log(DATA.join("&"));

URLSearchParamsインターフェイス

URLSearchParamsインターフェイスを使うと、もっとスマートに生成できます。
続きを読む…»

3,453 views

Git for Windowsのアップデート

Git for Windowsのアップデート方法(ver 2.16以降)

公式サイトGit for Windowsからインストーラーをダウンロードしてくるか、以下のコマンドを実行すれば自動でダウンロードしてくれます。
インストール自体は同じGUI画面が表示されるようです。

$ git update-git-for-windows
6,311 views

PDOのタイムアウト設定

MySQL接続にPDOを使用している場合のタイムアウト設定についてです。

PDOにはPDO::ATTR_TIMEOUTというオプションを設定することが出来ます。
設定する値は数値で、単位は秒です。

設定方法としてはPDOのインスタンスを生成するときに設定するか、後から設定する方法の2通りあります。

インスタンス生成のときに設定する

$dbh = new PDO('mysql:host=localhost;dbname=test', 
    $user, 
    $pass, 
    array(PDO::ATTR_TIMEOUT => 30)
);

後から設定する

PDO::setAttribute(PDO::ATTR_TIMEOUT, 30);

続きを読む…»

5,272 views

XAMPPでMySQLが起動しないエラー

XAMPPを使って開発をしていると、たまにMySQLがエラーで起動できなくなることがあります。
これまで同じ現象を2台のPCで経験しましたので、今後のためにも色々調べてみた中からなるべく簡単に戻せる方法をご紹介します。

まずはXAMPPでMySQLをスタートさせようとするとこのようなエラーが発生します。

エラー内容

Error: MySQL shutdown unexpectedly.
This may be due to a blocked port, missing dependencies, 
improper privileges, a crash, or a shutdown by another method.
Press the Logs button to view error logs and check
the Windows Event Viewer for more clues
If you need more help, copy and post this
entire log window on the forums

翻訳すると…

エラーです。MySQLが予期せずシャットダウンしました。
これは、ブロックされたポート、欠落した依存関係、不適切な特権、クラッシュ、または他の方法によるシャットダウンが原因である可能性があります。
不適切な特権、クラッシュ、または他の方法によるシャットダウンが原因である可能性があります。
Logs ボタンを押してエラーログを表示し、Windows Event Viewer をチェックしてください。
Windowsイベント・ビューアーを確認してください。
さらに詳しい情報が必要な場合は、以下のログウィンドウをコピーしてフォーラムに投稿してください。
ログウィンドウ全体をコピーしてフォーラムに投稿してください。

別のサービスが同ポートを使用しているか、ファイルが破損していることが原因のようです。
私の場合は同ポートを使っているサービスはなかったので、データの復元を試みたところ解決しました。


xampp\mysql\dataフォルダーを一旦別の場所にコピーしておきます。
コピー出来たらxampp\mysql\dataの中身を全て削除します。

続きを読む…»

13,975 views

VSCode+Git Git初期設定

VSCodeとGitを使う前提での設定になります。
VSCodeは今、私の中で非常に便利なエディターなのでそれを利用します。

ユーザー情報を設定
これを設定しておかないとまずGitが使えません。

$ git config --global user.name 'username'
$ git config --global user.email 'username@example.com'

エディターとマージツールをVSCodeに設定

$ git config --global core.editor 'code --wait'
$ git config --global merge.tool 'code --wait "$MERGED"'

pushのデフォルト方式を設定
私は初心者なので初心者向けのsimpleを設定
同名のブランチのみpushが行われる

$ git config --global push.default simple

pullの際のマージに関する設定

$ git config --global pull.rebase false

git status実行時、日本語ファイル名の文字化けを防ぐ

$ git config --global core.quotepath false

デフォルトのブランチ名を「master」から「main」に変更する

$ git config --global init.defaultbranch main

設定した内容を確認したい場合は以下のコマンド

$ git config --list

--globalはGit全体での設定になります。
--localにするとリポジトリ毎の設定になりますので、通常は--globalにすることをお勧めします。

VSCodeとGitを使う場合、拡張機能のGit Graphをインストールしておくと、変更履歴が比較できるので非常に便利です。
Git Graphを使うときは[メニュー]-[表示]からコマンドパレットを開き、git graphと入力するとGit Graph: View Git Graph (git log)が候補として表示されるのでそれを選択します。

また、左下にある「Git Graph」をクリックするとすぐに開けます。こちらのほうが簡単ですね。

参考URL:
VSCodeでのGitの基本操作まとめ – Qiita
VSCodeでGit・GitHubを使う方法を解説する【初心者向き】
gitconfig の基本を理解する – Qiita

981 views