An empty bottle

しがないメンヘラエンジニアの日記。

Conoha VPSにDBサーバを立てたよ

まあ参考にしたURLを投げるだけですけどね…

■やったこと
DBサーバの契約
NICのscript生成

以上!

NICは当たり前だけどサーバごとに違うので…。
どこのIP書きゃいいんじゃ!ってtry and errorで試してました。

結果的に、pingが通ればOKです!



以下参考URLありがとうございました!

blog.3oku.net


www.conoha.jp

UA判定 @Cakephp3

お疲れ様です。

私は衝撃を受けました。

発端は「UA判定って自分で作るしか無いのかな」って思ってました。

しかーし。

Request Handling
こんなのが。

既存でisMobileって使える!!!

cronの実行ログの場所

/var/log/cron

以上。備忘録でした。

Make Twitter BOT part1 : get twitteroauth @cakephp3

詳しくは下記リンクです。(丸投げ)

【CakePHP3】Twitter API ライブラリTwitterOAuthをComposerでインストール |

ただ、私が詰まったところは、outhのバージョンってどこだろう?ってことですね。


自分の対応しているバージョンはどれか、です。


 "abraham/twitteroauth": "*"

って全部OK!ってしてしまうのは個人的に好きじゃなかったので。


方法は以下。
1.作者さんのgithubに飛びます。
github.com

2.というかpackagistに飛びます。
packagist.org

packagistの右メニュー内に各バージョンの詳細が記載されています。

現在(2016/11/13)の最新バージョンは 0.7.1ですね。
packagist.org

詳しく知りたいという方は、phpのバージョンを明記してコメントください。

ただ、これくらいなんとなーく直感でみつけるくらいはエンジニアとして必要なスキルかなって思います。

私はphpが5.5.4だったので0.6.6です。

クエリ結果の行数チェック。。@Cakephp3

ちょっと躓いた。

例えば、検索結果があったか、でviewを分岐したいとするじゃない?

正しい方法は

<?php if($posts->count() == 0) : ?>

  ないよー

<?php else : ?>
  
  <table>
    中略
    <?php foreach($posts as $post) : ?>
      おっほほう
    <?php endforeach; ?>

  </table>

<?php endif; ?>


なんだけどさ。

私 countメソッドの存在知らなくて((
first が nullか、でチェックしてたの。

<?php if($posts->first() == null) : ?>

  ないよー

<?php else : ?>
  
  <table>
    中略
    <?php foreach($posts as $post) : ?>
      おっほほう
    <?php endforeach; ?>

  </table>


<?php endif; ?>
  • >first() ってやっちゃう時点で、クエリにはlimit 1 がつくのでだめですね。

はい
件数取得の際はcountで。

location ディレクティブ@nginx

かなり使います
location ディレクティブ。

優先順位があるので、ちゃんと使いましょ。

location = / {
  # / のみが条件に一致。
  # ここにヒットしたら、何よりも優先されて以下はチェックされません。終了。
  [ A ] 
}
location  / {
  # / で始まる全てのURIに一致します。
  # 正規表現や文字列が長いものが優先的。
  [ B ] 
}
location /doc/ {
  # /doc/ で始まる全てのURIに一致します。
  # 正規表現のチェックは、続けて処理されます。
  [ C ] 
}
location ^~ /img/ {
  # /img/ で始まる全てのURIに一致したら、そこで検索終了。
  # ここにヒットしたら、何よりも優先されて以下はチェックされません。終了。
  [ D ] 
}
location ~* \.(gif|jpg|jpeg)$ {
  # 末尾が、gif, jpg, or jpeg の場合、一致します。
  # しかし、/img/ ディレクトリのすべての要求は、[ D ]で終了
  [ E ] 
}

範囲コピーが意外と楽 @Vim

備忘録。

コマンド 動作
yy カーソル行をコピー
p コピーした文字列をカーソル行の下に貼り付けます。
3yy カーソル行から3行をコピー
3p コピーした文字列をカーソル行から3回貼り付けます。
nyy カーソル行からn行をコピー
np コピーした文字列をカーソル行からn回貼り付けます。

はい。