[PHP]メソッドの返り値にオブジェクト演算子が使えるようになっている件

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[PHP]メソッドの返り値にオブジェクト演算子が使えるようになっている件

PHPで、メソッドの返り値に対してオブジェクト演算子(->)が使えるようになってる。

$obj->medhod()->method();

前から使えたっけ?使えないイメージだったが。

今までは特に使うシーンがなかったんだが、今日便利な使い方を覚えた。

$pdo = new PDO($dsn ,$username, $password);
$pdo->prepare('INSERT INTO book (name, age) VALUES(?, ?)')->execute(array($name, $age));

PDO#prepare使ってもワンライン。もう↓みたいな書き方しなくてよい。

//コードが$stmtだらけになる。
$stmt = $pdo->prepare('INSERT INTO book (name, age) VALUES(:name, :age)');
$stmt->execute(array('name' => $name, 'age' => $age));

//長い
$pdo->exec('INSERT INTO book (name, age) VALUES(' . $pdo->quote($name) . ', ' . $pdo->quote($age) . ')');

便利だ。

でも、残念ながらコンストラクタには->を接続できず…

//エラー
new PDO($dsn)->prepare($sql)->execute($values);
スポンサーサイト

関連記事

トラックバック URL

http://liosk.blog103.fc2.com/tb.php/41-83cd6fcd

トラックバック

コメント

コメントの投稿

お名前
コメント
編集キー
 
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。