PHP の array_key_exists は Ruby では Hash#key? に対応する

 

PHP の array_key_exists みたいな処理を Ruby では Hash#key? を使って実現するみたいです。
 

■ PHP

1
2
3
$a = array('first' => 1, 'second' => 2);
var_dump( array_key_exists('first', $a) );
// => true

 

■ Ruby

1
2
3
animals = {:sheep => 1, :cow => 2};
puts animals.key?(:cow);
# => true

 
 
ハッシュ内にキーが存在するかどうか調べるメソッドは、includeの他にも、key, has_key, memberなどがあるみたいです。
 

【参考】

Convert PHP array_key_exists() to Ruby | PHP to Ruby はてなブックマーク - Convert PHP array_key_exists() to Ruby | PHP to Ruby

逆引きRuby – ハッシュ はてなブックマーク - 逆引きRuby - ハッシュ
 

[Ruby] インクリメント(Increment)は”++”ではなく”+=1″

Ruby でのインクリメント(Increment)は”++”ではなく”+=1″と自己代入でするみたいです。

PHP でのインクリメント(Increment)

$i = 0;
$i++;

Ruby でのインクリメント(Increment)

i = 0
i += 1

以上です。

[Linux] 起動時にコマンドやプログラムを自動実行させる方法

CentOSの起動時にコマンドやプログラムを自動実行させる方法を調べたのでメモ。

OS起動時にユーザが独自でプログラムを実行させたい場合には、 /etc/rc.d/rc.local ファイルに起動コマンドを書きます。

/etc/rc.d/rc.local ファイルは、起動プロセスの最後に実行されるシェルスクリプトです。

僕は、起動時に export で認証付きプロキシを通すのと、ntpdate で時刻同期させたかったので以下のようにしました。

■ /etc/rc.d/rc.local(編集前)

#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
 
touch /var/lock/subsys/local

■ /etc/rc.d/rc.local(編集後)

#!/bin/sh
 
touch /var/lock/subsys/local
 
# プロキシ認証
export http_proxy=http://[ユーザ名]:[パスワード]@[IPアドレス]:[ポート番号]/
# 時刻同期
ntpdate [IPアドレス]

以上です。

[Eclipse] svn: Working copy locked; try performing ‘cleanup’ クリーンアップができない

Eclipseにて、svn: Working copy locked; try performing ‘cleanup’というようなエラーが出て、コミットできなくて、エラーメッセージ通りにクリーンアップしてみるとクリーンアップができないという状態になりました。

解決方法が以下のサイトに書かれていて助かりました。ありがとうございます。

・参考:svn: Working copy locked; try performing ‘cleanup’ クリーンアップができない – [Eclipse/開発環境 ツール類] ぺんたん info はてなブックマーク - svn: Working copy locked; try performing 'cleanup' クリーンアップができない - [Eclipse/開発環境 ツール類] ぺんたん info

■ コミット時のエラーメッセージ

選択されたリソースのいくつかがバージョン管理に追加されませんでした。
選択されたリソースのいくつかがコミットされませんでした。
svn: Working copy ‘C:\Users\bakorer\workspace\project\xxx\UserResign’ locked; try performing ‘cleanup’

■ クリーンアップ時のエラーメッセージ

選択されたリソースのいくつかがクリーンされませんでした。
svn: Error processing command ‘modify-entry’ in ‘C:\Users\bakorer\workspace\project\xxx\UserResign’
svn: Error modifying entry for ‘config’
svn: ‘config’ is not under version control

UserResign ディレクトリ内で「svn」というワードで検索して、logファイルとlockファイルを削除してからコミットしたらちゃんと出来ました。

以上です。

[MySQL] ERROR 1045 (28000): Access denied for user

 

MySQLにて、DBからCSVファイルに書き出しを行おうとしたら、以下のようなエラーが発生しました。
 

1
2
mysql> select * from users into outfile "./users.csv" FIELDS TERMINATED BY ',';
ERROR 1045 (28000): Access denied for user 'username'@'localhost' (using password: YES)

 

MySQLのユーザに、FILEを扱う権限がないとCSVファイルへ出力できないみたいです。
 

1
GARANTS FILE ON *.* TO username@localhost;

 

・参考:よしおのいろいろメモ mysqlのselect intoでERROR 1045 (28000): Access denied for user
 

以上です。