ホームページ >バックエンド開発 >PHPチュートリアル >PHP関数を見つけるのを手伝ってください
PHP には次のような関数があるような印象があります:
$a = 1;$b = 2;$array = xxxx($a,$b);
この関数は必要ありません。
$arr = array();
$arr['a'] = 1; 2;
その関数は必要ないので、なぜこれを実行しないのですか?
$arr = array(); ] = 1;
$arr['b'] = 2;
見つけました
$a = 1;$b = 2;$c = 3;$array1 = compact('a', 'b', 'c');$array2 = array('a'=>$a, 'b'=>$b, 'c'=>$c);
$a = 1;
$c = 3;
$array1 = 'a', 'b', 'c'; >これには 4 行かかります
$array2 = array('a'=>1, 'b'=>2, 'c'=>3)
これには 1 行しか必要ありません
$arr = array();
$arr['a'] = 1;
$arr['c'] = 3 ;
それでもまだ4行あります。
必要に応じて、$arr['b'] を使用してこのように読み取ります。
$arr['b']['c' を除く) 変数 $b はまったく必要ありません。 ]['d'] これは非常に長いので、コードを簡略化するために複数回使用した場合にのみ変数を保存します。
しかし、コンパクト関数のことを本当に忘れていたことを認めなければなりません
$a = 1;
$array1 = 'a', 'b', 'c'; >これには 4 行かかります
$array2 = array('a'=>1, 'b'=>2, 'c'=>3);
これには 1 行しかかかりません
$arr = array();
$arr['a'] = 1;
$arr['c'] = 3 ;
それでもまだ4行あります。
必要に応じて、$arr['b'] を使用してこのように読み取ります。
$arr['b']['c' を除く) 変数 $b はまったく必要ありません。 ]['d'] これは非常に長いので、コードを簡略化するために複数回使用した場合にのみ変数を保存します。
最初の 3 つの変数は必須です。これらは 1 行ですよね?
目的は、変数の配列を作成することです。この配列のためだけに、既存のソース コードを変更しますか?プロセスが複雑な場合は、わざわざ読みません。結果にはいくつかの変数があることだけがわかっているので、配列を作成したいと思います。それ以外の場合は、もちろん、配列として記述するだけです。
$a = 1;$b = 2;$c = 3;$t = array_diff_key(get_defined_vars(), array_flip(array('_GET', '_POST', '_COOKIE', '_FILES')));print_r($t);かなり暴力的です
Array( [a] => 1 [b] => 2 [c] => 3)実際、compact を使用するには前提条件があります。少なくとも変数名を知っている必要があります
array_combine de を使用すると、元のメンバーの順序が崩れる可能性があります
そして、get_define_vars を使用して未知の変数を検出できます
$a = 1;$b = 2;$c = 3;$t = array_diff_key(get_defined_vars(), array_flip(array('_GET', '_POST', '_COOKIE', '_FILES')));print_r($t);