関数・クラス解説
compact
version:PHP 4, PHP 5, PHP 7 (公式)変数名とその値から配列を作成する
公式リファレンス
書式
compact ( mixed $var_name , mixed ...$var_names ) : array
説明
変数名とその値から配列を作成します。
各引数について、compact() は現在のシンボルテーブルにおいてその名前を有する変数を探し、 変数名がキー、変数の値がそのキーに関する値となるように追加します。 端的に言うと、extract() の逆の動作をします。
注意:
PHP 7.3 より前のバージョンでは、設定されていない全ての文字列は、単にスキップされます。
パラメータ
- var_name
- var_names
- compact() がとるパラメータの数は可変です。 各パラメータは、変数名を値とする文字列か、 変数名の配列のどちらかとすることができます。 配列は、変数名を値とする別の配列を持つことができます。 compact()はこれを再帰的に処理します。
返値
追加された全ての変数を値とする出力配列を返します。
エラー
compact() は、与えられた文字列が示す変数が未定義の場合、 E_NOTICE レベルのエラーを発行します。
注意
注意: 分かった! 可変変数 は関数内で PHP の スーパーグローバル配列 と併用してはいけませんので、 スーパーグローバル配列を compact() に渡してはいけません。
更新履歴
バージョン | 説明 |
---|---|
7.3.0 | compact() は、与えられた文字列が示す変数が未定義の場合、 E_NOTICE レベルのエラーを発行するようになりました。 以前のバージョンでは、設定されていない全ての文字列は、単にスキップされます。 |
サンプル
例1 compact() の例
$city = "San Francisco";
$state = "CA";
$event = "SIGGRAPH";
$location_vars = array("city", "state");
$result = compact("event", $location_vars);
print_r($result);
上の例の出力は以下となります。
Array
(
[event] => SIGGRAPH
[city] => San Francisco
[state] => CA
)
参考
ワード検索
※入力キーワードが、関数名・説明文・タグに含まれるものを検索関数名アルファベット別
最終更新一覧
●stristr
大文字小文字を区別せず文字列を検索し、ヒット箇所以降(あるいは以前)の文字列を返却
●stripslashes
バックスラッシュでエスケープされた文字列から、バックスラッシュを取り除く
●stripos
大文字小文字を区別せずに文字列が最初に現れる位置を取得する
●stripcslashes
addcslashes() でクォートされた文字列をアンクォートする
●strip_tags
文字列から HTML と PHP のタグを除去して返却
●strcspn
指定した文字が最初に現れる位置を調べる
●strcoll
ロケールに基づいて2つの文字列を比較し同じか(あるいは大小)を判定する
●strcmp
2つの文字列を比較し同じか(あるいは大小)を判定する
●strchr
strstr() のエイリアス
●strcasecmp
2つの文字列を比較(大文字小文字を区別せず同じとみなす)
カテゴリー一覧
PHP の振る舞いの変更
音声フォーマットの操作
認証サービス
コマンドライン関連
圧縮およびアーカイブ
暗号
データベース関連
日付および時刻関連
ファイルシステム
自然言語および文字エンコーディング
画像処理および作成
メール関連
数学
テキスト以外の MIME 型
プロセス制御
その他の基本モジュール
その他のサービス
検索エンジン用の拡張モジュール
サーバー固有のモジュール
セッション関連
テキスト処理
変数・データ型関連
ウェブサービス
Windows 用のモジュール
XML 操作
GUI用の拡張モジュール