SYNCERのロゴ
アイキャッチ画像

compact - 変数から配列を作成する

compactは、指定した名前の変数から配列を作成する関数です。シンボルテーブルから指定した名前の変数を探し、その変数の名前がキー、値が値の連想配列になります。引数は可変で複数指定できます。配列を指定した場合、その値が処理にかけられます。

構文

array compact ( mixed $varname1 [, mixed $... ] )

パラメータ

$varname1

変数の名前。

$...

第2引数以降にいくつでも値を指定できます。

返り値

array

変数の名前をキー、値を値にした連想配列。

サンプルコード

<?php
	$varname1 = "A" ;
	$varname2 = "B" ;

	$response = compact( "varname1", "varname2" ) ;

デモ

変数から配列を作る

$queue1、$queue2という2つの変数から、配列を作成します。

<?php
/*** このコードは編集できます。 ***/

	$varname1 = "A" ;
	$varname2 = "B" ;

	$response = compact( "varname1", "varname2" ) ;

	print_r( $response ) ;
Array
(
    [varname1] => A
    [varname2] => B
)

変数が存在しない場合

指定した名前の変数が存在しない場合、特にエラーは起こりません。返り値に含まれないだけです。

<?php
/*** このコードは編集できます。 ***/

	$varname1 = "A" ;
	$varname2 = "B" ;

	$response = compact( "varname3" ) ;

	print_r( $response ) ;
Array
(
)

配列を指定した場合

引数に配列した場合、その配列に含まれる値が処理にかけられます。例えば下記では[ "queue2", "queue3" ]という配列を指定しています。これは配列としてではなく、配列に含まれる2つの値が引数として評価されます。配列は一次元でなく多次元でも大丈夫です。

<?php
/*** このコードは編集できます。 ***/

	$varname1 = "A" ;
	$varname2 = "B" ;
	$varname3 = "C" ;

	$response = compact( "varname1", [ "varname2", "varname3" ] ) ;

	print_r( $response ) ;
Array
(
    [varname1] => A
    [varname2] => B
    [varname3] => C
)
  • Twitterでシェア
  • Facebookでシェア
  • Google+でシェア
  • はてなブックマークでシェア
  • pocketに保存
  • LINEでシェア
更新履歴
2017年6月25日 (日)
コンテンツを公開しました。