compact
変数名とその値から配列を作成する
&reftitle.description;
arraycompact
arraystringvar_name
arraystringvar_names
変数名とその値から配列を作成します。
各引数について、compact
は現在の シンボルテーブル においてその名前を有する変数を探し、
変数名がキー、変数の値がそのキーに関する値となるように追加します。
端的に言うと、extract の逆の動作をします。
PHP 7.3 より前のバージョンでは、設定されていない全ての文字列は、単にスキップされます。
&reftitle.parameters;
var_name
var_names
compact がとるパラメータの数は可変です。
各パラメータは、変数名を値とする文字列か、
変数名の配列のどちらかとすることができます。
配列は、変数名を値とする別の配列を持つことができます。
compactはこれを再帰的に処理します。
&reftitle.returnvalues;
追加された全ての変数を値とする出力配列を返します。
&reftitle.errors;
compact は、与えられた文字列が示す変数が未定義の場合、
E_WARNING レベルのエラーを発行します。
&reftitle.changelog;
&Version;
&Description;
7.3.0
compact は、与えられた文字列が示す変数が未定義の場合、
E_NOTICE レベルのエラーを発行するようになりました。
以前のバージョンでは、設定されていない全ての文字列は、単にスキップされます。
&reftitle.examples;
compact の例
]]>
&example.outputs;
SIGGRAPH
[city] => San Francisco
[state] => CA
)
]]>
&reftitle.notes;
分かった!
可変変数 は関数内で
PHP の
スーパーグローバル配列 と併用してはいけませんので、
スーパーグローバル配列を compact に渡してはいけません。
&reftitle.seealso;
extract