メニュー
ブログ更新履歴
コンテンツ更新履歴
リンク
  • Magome
  • クラウドベースのMIDIシーケンサ
    音楽制作に興味のある方を対象に、スタンドアロンでも使え、ネットならではの面白さも兼ね備えた音楽制作アプリの提供を目指しています。
twitter

PHP の小技です。
小手先テニクックとしてコーディングの役に立つかもしれないものを掲載しています。

文字列でオブジェクト定数 を展開する。 anchor.png

class Database
{
	const dbName = 'user';
	const column = 'id';
	public function __construct()
	{
		・・・
		$query = "CREATE TABLE {self::dbName} ({self::column} INT)";
		・・・
	}
};

PHP で、↑のように、文字列定義の中にオブジェクト定数を埋め込む記述が出来ないものか、けっこう調べてみたけど、今は出来ないっぽい。無念。

・・・とだいぶ以前ブログで呟いたんですが、とりあえず最近は、

	$f = function ($v){ return $v; };
	$query = "CREATE TABLE {$f(self::dbName)} ({$f(self::column)} INT)";

のように無名関数を使ってお茶を濁しています。
PHPのバージョンアップで対応してくれるのが一番スマートな気がします。


Front page   Freeze Diff Backup Copy Rename ReloadPrint View   New Page Page list Search Recent changes   Help   RSS of recent changes (RSS 1.0) RSS of recent changes (RSS 2.0) RSS of recent changes (RSS Atom) Powered by xpWiki
Counter: 1543, today: 2, yesterday: 0
Princeps date: 2016-04-14 (Thu) 11:07:11
Last-modified: 2016-04-14 (Thu) 11:07:11 (JST) (1223d) by takatsuka