nginxが古かったので新しくしてみた

あるWebサーバーのproxyにnginxを使っていましたが、かなり古かったです

$ nginx -v

でバージョンが見えます

yumでupdate..と思ったらいなかったので

nginx: Linux packages

からrpmをダウンロードして実行しました

Centos6だったので
$ sudo rpm -ivh nginx-release-centos-6-0.el6.ngx.noarch.rpm

これで

$ yum update nginx

$ npm -v
nginx version: nginx/1.8.0

で新しくなりました

jQueryにはドットが使えない

htmlでidにドットがついてるものがあってjQueryで呼び出すとエラーが..

<ul>
  <li id="sample.0.item">1st</li>
  <li id="sample.1.item">2nd</li>
</ul>

こうしたらいいみたいです

$('#sample\\.0\\.item').val()

Oracleで30文字より長いファンクション名(とかの識別子)は付けられない

Oracle 11gでFunctionで処理をしてしまおうと

CREATE OR REPLACE FUNCTION なんとかかんとか長いファンクション名 (code in VARCHAR) RETURN VARCHAR2
// 処理いろいろ
END;

を流すとエラーが

エラー・レポート -
ORA-00972: 識別子が長すぎます。
00972. 00000 -  "identifier is too long"
*Cause:    An identifier with more than 30 characters was specified.
*Action:   Specify at most 30 characters.

Function名に30文字以上はだめ..?
PL/SQLのプログラム上の制限

識別子は30Byteまででした
古い作りの名残でしょうか..

PHPでキーがあるかの判定にissetはよくない

PHPでキーがあるかというときにissetを使ってたところがあってちょっとはまったのでメモ

issetだと

$arr = ['1' => null, '2' => 'second']
if (isset($arr['1'])) {
  // falseになり
} else {
  // こっちが実行される
}

値がnullとか0とかをfalseにされてしまいます
array_key_existsを使うのがいいです

$arr = ['1' => null, '2' => 'second']
if (array_key_exists($arr['1'])) {
  // こっちが実行される
} else {
  // 
}

keyがあるかは array_key_exists を使いましょう