オライリー本のプログラミングPHPより皆様に質問です。
以下コードの結果は、フォームに入力があった場合、
「You did have all the required」
入力がなかった場合、
「You did not have all the required」
となります。
<?php function hasRequired($array, $requiredFields){ $array = $keys = array_keys($array); foreach ($requiredFields as $fieldName){ if (! in_array($fieldName,$keys )){ return false; } } return true; } if ($_POST ['submitted']) { $testArray = array_filter($_POST); echo "<p>You "; echo hasRequired ($testArray, array( 'name', 'email_adress' ))? "did" : "did not"; echo "have all the required.</p>"; } ?> <form action ="<?php echo $_SERVER['SCRIPT_NAME']; ?>" method="POST"> <input type="text" name="name"/> <input type="text" name="email_adress"/> <input type="text" name="age"/> <input type="submit" value="submit" name="submitted"/> </form>
質問①$requiredFieldsは一体どこからやってきたのでしょうか
質問該当箇所:
function hasRequired($array, $requiredFields「ここ」)
質問②$arrayのイコール以降、何もコードが書かれていないのですが、どういう意味でしょうか。。
質問該当箇所:
function hasRequired($array, $requiredFields){
$array = 「ここ」
質問③array_filterをなぜ使っているのでしょうか。。
array_filter「ここ」($_POST);
質問④この部分のコードは何を意味しているでしょうか。。
echo hasRequired ($testArray, array(
'name',
'email_adress'
))? "did" : "did not";
質問だらけで大変申し訳ございません。。
もし、一つだけでもお分かりになる方がいらっしゃいましたら、
ご教授頂けますと幸いです。
よろしくお願い致します。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/08 08:43