さて、私のタイトルは少し紛らわしいかもしれませんが、私の状況を説明させてください:
私はかなり大きなフォームを持っており、フィールドがたくさんあり、必須のものとそうでないものがあります。私はJSを使用して検証を行っていますが、PHPを使用してサーバー側でも検証を行っています。
私がユーザーに求めているものの1つは、「ヘッダー名」です。これで、ヘッダー名の名前属性は「header1」になります。ユーザーは、フォームにヘッダーフィールドを追加するオプションがあります。したがって、ボタンをクリックすると、名前属性「headerx」を持つ別の「HeaderNameX」が追加されます。
とった?ここで問題となるのは、一般にこれらのヘッダーフィールドは必須ではありませんが、少なくとも1つのヘッダーフィールドを提供する必要があるという条件があります。したがって、100を供給でき、2を供給でき、1を供給できますが、何も供給しない場合、検証は失敗するはずです。
しかし、PHPでこれをチェックする良い方法は考えられません。私はあなたの最初の考えが$_POSTに何かが含まれているかどうかをチェックすることだと知っています。ただし、これらはこれらのヘッダーとは関係のない必須のこのフォームの他の複数のフィールドであるため、機能しません。したがって、$ _ POSTに何かが含まれているかどうかを単純に確認することはできません。これは、常に含まれているためです。
isset()を正規表現と組み合わせる方法はありますか?isset($ _ POST ['header {\ d +}']のようになります。これは、少なくとも1桁の数字が続くヘッダーのようになります。
助けてくれてありがとう!
編集:ああ、これがまだ十分に難しいものではなかった場合、ヘッダーフィールドの量は無制限です。したがって、考えられるすべての「headerx」をループすることはできません。これは明らかに無限ループになるためです。