Tips!for文の条件式に関数を使うとパフォーマンスが落ちる - PHP
for文の条件式に変数を使った場合と、関数を使った場合と比較すると前者の方が処理が速くなります。
<?php for ($i = 0; $i < count($data); $i++) { // 処理 }
<?php $cnt = count($data); for ($i = 0; $i < $cnt; $i++) { // 処理 }
計測してみます。
<?php $start = microtime(true); $data = range(1, 1000000); for ($i = 0; $i < count($data); $i++) { $data2[] = $data[$i]; } $pasttime = microtime(true) - $start; error_log($pasttime);
実行経過: $pasttime
一回目: 0.098823070526123
二回目: 0.097952127456665
三回目: 0.093841075897217
四回目: 0.092334032058716
五回目: 0.095686912536621
<?php $start = microtime(true); $data = range(1, 1000000); $cnt = count($data); for ($i = 0; $i < $cnt; $i++) { $data2[] = $data[$i]; } $pasttime = microtime(true) - $start; error_log($pasttime);
実行経過: $pasttime
一回目: 0.059938907623291
二回目: 0.061800003051758
三回目: 0.057307004928589
四回目: 0.059583902359009
五回目: 0.057235956192017
(byへびさん)
100の目標-8月進捗
8月はジムに通いはじめるなど、生活スタイルが大きく変わりました。
スポーツに力を入れたのとブクログにはまったのとで、疲れ果ててその他の目標が大きく停滞…。
100の目標 振り返り
進捗
完了:
15, 48
着手中:
17. WordPress『Outdoor Begginer』というブログ(サイト)を作成する
・作成中
41. Progate 無料分全部 終わらせる
・SQL 学習コース1完了
・Swift 学習コース1完了
・JavaScript 学習コース1完了
進捗無し(^-^;)
進捗
完了:
68. 5km走る(歩いたり休まずに)
着手中:
71. 450分何かしら運動
残:4分
・ランニング、ウォーキング 265分
・ジム 150分
進捗
着手中:
76. 5キロ痩せる
進捗無し(^-^;)ヤセネー
進捗
82. ブログを60本書く
残:48本
・7月 4本完了 8月 8本完了
進捗
90. 技術語学、雑誌以外のジャンルの本を15冊読む
残:11冊
・3冊(8月)
└カリブ海の秘密 (アガサ・クリスティー)
└杉の棺 (アガサ・クリスティー)
└ドキュメント 滑落遭難
ジャンルが偏る
91. 映画を30本見る
残:28本
・2本
└オデッセイ(TV)
└ジュラシック・ワールド 炎の王国(映画館)
進捗
99. 大町、安曇野、諏訪、上田、白馬にそれぞれ一回ずつ行く
残:4箇所
感想
娯楽よりになってきているので、バランスをとりたい。
家計簿や日記等、ライフログが全然とれてない。
Memo!Docker初心者のとりあえずコマンドメモ
前前前提
- Docker
- 軽量なコンテナ型のアプリケーション実行環境
- Dockerイメージ
- アプリケーションとのその実行環境、展開/操作方法などをまとめた1つのパッケージ
- Dockerコンテナ
- DockerイメージをDocker Engine上で起動したもの
コンテナを立ち上げるために必要なコマンド
■利用できるイメージを確認する
docker images
docker pull {イメージ名}
■不要なイメージを削除
docker rmi {イメージID}
イメージIDはdocker imagesで確認できる。
コンテナが起動している時は削除できない。
■コンテナの起動
docker run [option] {イメージ名}[:tag|@digest] [command] [arg...]
参考:Docker run リファレンス — Docker-docs-ja 17.06.Beta ドキュメント
オプション 一例
-d | コンテナをデタッチド・モード(バックグラウンド、もしくはデーモンとして起動)で実行 指定しない場合はフォアグラウンド・モードになる |
-a | `STDIN`, `STDOUT`、`STDERR`に接続する(一部の指定可) 指定しない場合は、全ての標準ストリームをアタッチする |
-i | 接続されていなくても、標準入力を開いたままにする |
-t | 疑似端末の割り当て |
-p | コンテナのポート、またはポート範囲をホスト側に公開する ip:ホスト側ポート:コンテナ側ポート |
--name | コンテナ識別子をつける |
--restart | 再起動ポリシーを指定する |
Ex.
イメージ"php:7.0-apache"をphp70-apacheというコンテナ名をつけて、バックグランドで起動する(byへびさん)
Rpt!信州 WordPress Meetup in 松本 Vol.2 (8/18)
信州 WordPress Meetup in 松本 Vol.2 に参加してきました
登壇者の発表を聴くスタイルの勉強会です。
## 1. ローカルメディアをつくる話
ごしゅメモ、SKIMA信州を運営している信州さーもんさん。
WordPressで運営しているコンテンツのお話をして頂きました。
特に印象に残っていることは、記事を書くときに心掛けていることについて。
誰に伝えたいか、どんな行動にでて欲しいのかを考えてから記事を書く。
誰に→ペルソナ(モデルとなるユーザーのこと)を考え、そこに訴求する構成にする。
どんな行動→対象を知って欲しいのか、遊びに来て欲しいのかなど、目標を決める。
このブログは、読み手のことはなーんも考えてないです。
新人PGのねこさんに技術ブログを書く習慣がつけば技術向上につながるんじゃないかなー、私も一人でブログ書くとモチベ的に続かないしー。
みたいな甘い考えで始めたユルユルブログです(^-^;)
ここは自分のための技術メモブログなので、まぁ、それでも良いかと思っていますが、
今度、新しくWordPressで作る(予定の)ブログは、ちゃんとその辺のことも考慮した上で公開したいと思います。
私はシステム側の人間ということもあり、コンテンツよりツールであるWordPressそのものに興味があっちゃうのですが、やっぱりWordPressで一番肝要なのは「何を作るか、何を伝えるか」かなーと思います。
目的を達成をサポートするためのものがツールなので。
プロは色々考えて記事書いているんだなと刺激になりました。
Tips!Bootstrap4はじめました - CSS
Bootstrap3はしょっちゅう使っているのですが、Bootstrap4と何が違うのかちゃんと把握しないとな~と思いながらずっと後回しにしてました。
そんな今日この頃、重い腰をあげてBootstrap4はじめてみました。
もっとも簡単にBootstrap4をはじめる方法。
Bootstrap CDNを使います。
HTMLファイルのheadタグの中でcssファイルを読み込みます。
<!-- Bootstrap CSS --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous">
任意の箇所でjsファイルを読み込みます。
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
なんと、たったこれだけでBootstrap4が使えちゃいました!
こんな感じ
ボタンがbootstrapの用意しているデザインになっていることが確認できます。
[デモを見る]
これで、一通り動作確認をしていこうかなと。
参考:
getbootstrap.com
今回は、このサイトのStarter templateをほぼコピーして、ボタンを追加しただけですw
(byへびさん)