1
$m = 'this_is_m';
$this_is_m = 'this_is_m_not_full :(';
$this_is_m_full = 'this_is_m_FULL!! :D';

print ${$m};

(こんにちは最初:P)出力:

this_is_m_not full :(

??this_is_m_FULL!! :D を使用 して出力する方法はありますか?$m

私がすでに試したこと:

print $"{$m}_full";
print $'{$m}_full';
print $'$m_full';
print ${$m}_full';

何も機能しませんでした...よろしくお願いします、、

4

3 に答える 3

2

目的の出力を得るには、次のことを行う必要があります。

print ${$m . "_full"};
于 2012-05-14T16:35:11.293 に答える
2

解決策は次のとおりです。

print ${$m . '_full'};

しかし、それは非常にハックな気がします。

于 2012-05-14T16:35:12.253 に答える
1

以下が機能するはずです。

print ${$m.'_full'};

これは、中括弧内の文字列が最初に評価されるためです。

print ${'this_is_m' . '_full'}  
  ->  print ${'this_is_m_full'}  
  ->  print $this_is_m_full

これに関する詳細情報が必要な場合は、このマニュアル ページを参照してください。

于 2012-05-14T16:48:05.277 に答える