PHP の検証とチェック
今日は、Web アプリケーション開発プロセスの非常に重要な部分を確認します。 ユーザー入力の検証。 これは、アプリケーションの中で最も注意が必要な部分の 1 つです。 これはなぜですか? 開発者はそれを制御できないため。 世界最高のアルゴリズムを作成しても、それにユーザー入力が含まれている場合は、何かが間違っている可能性があります。 間違った記号が入力されるのを防ぎ、データの整合性をチェックし、すべてが問題ないことを確認するために可能な限りの措置を講じるために、複製されたロジックを導入したとしても、ユーザーが間違った数値を入力した可能性は依然としてあります。 結局のところ、人的エラーを避けるように努める必要があり、これを行うための最良の方法は正規表現を使用することです。 基本的には文字列一致のための正規表現です。 これらはすべて、テキスト文字列の検索とパターン マッチングに基づいています。 彼らが書いたたくさんの本、さらにはプログラミング言語の設計、特に正規表現についても書いています。 しかし、今日は正規表現がユーザー入力にどのように役立つかについて簡単に紹介するだけです。 まず、この言語の基本概念をいくつか理解しておくことをお勧めします。 その構文は PHP マニュアルで詳しく説明されています -
>パターン構文 それでは、作業を始めましょう。 ユーザー入力に関する最も一般的な問題のいくつかを取り上げます。 すべてではないにしても、ほとんどを見たことがあると思います。 必須入力フィールドを備えた登録フォームを作成します。それらは次のとおりです: - 名前 - 住所 - パスポート - 電子メール -電話番号 -郵便番号 -日付 -ユーザー名 -パスワード こちらがテストフォーム(ダウンロード)です、 エラー メッセージを保持する PHP 検証サンプル で使用するいくつかの変数 を定義する必要があります。 それらの値は、ページを更新するたびにクリアされます。
$errName
<code class="php plain">= ""
;
$errAddress
<code class="php plain">= ""
;
$errEmail
<code class="php plain">= ""
;
$errPassport
<code class="php plain">= ""
;
$errPhone
<code class="php plain">= ""
;
$errZip
<code class="php plain">= ""
;
$errDate
<code class="php plain">= ""
;
$errUser
<code class="php plain">= ""
;
$errPass
<code class="php plain">= ""
;<br>
<br>
<span style="font-family:Verdana,Arial,sans-serif">PHP で正規表現を使用するには 2 つの方法があります。 </span><span style="font-family:Verdana,Arial,sans-serif">1 つは真の PHP スタイルです。この場合は ereg() 関数を使用する必要があります。もう 1 つは Perl スタイルの構文を使用しており、これを検証します。 </span><span style="font-family:Verdana,Arial,sans-serif">この場合、preg_match() 関数を使用する必要があります。 </span><span style="font-family:Verdana,Arial,sans-serif">このチュートリアルでは、preg_match() を使用します。これは、ほとんどの場合、より高速であり、最も一般的な正規表現構文もサポートしているためです。 </span><span style="font-family:Verdana,Arial,sans-serif"> また、使用できるさらに多くの機能も提供されます。 </span><span style="font-family:Verdana,Arial,sans-serif"> ユーザー名で認証を開始します。 </span><span style="font-family:Verdana,Arial,sans-serif">文字、スペース、ダッシュのみを使用できます。 </span><span style="font-family:Verdana,Arial,sans-serif">そこで、regexp (正規表現) を作成します。 </span><span style="font-family:Verdana,Arial,sans-serif">可能な値のカテゴリを作成します。 </span><span style="font-family:Verdana,Arial,sans-serif"> クラスは、括弧で囲んだいくつかのシンボルを使用して作成されます。 </span><span style="font-family:Verdana,Arial,sans-serif">これは私たちのクラスです: </span><span style="font-family:Verdana,Arial,sans-serif"> [A-ZA-Z's - 私たちのクラスには、A-Z (すべて小文字)、文字 (大文字)、間のスペースとダッシュが含まれています。</span> <span style="font-family:Verdana,Arial,sans-serif"> ここで、入力したすべての文字に適用されるようにこのクラスを設定します。 </span><span style="font-family:Verdana,Arial,sans-serif">そこで、クラス定義の後に (+) と署名を追加しました。 </span><span style="font-family:Verdana,Arial,sans-serif"> 私たちにはまだ欠けているものがあります。 </span><span style="font-family:Verdana,Arial,sans-serif">検証テストの範囲はまだ定義されていません。 </span><span style="font-family:Verdana,Arial,sans-serif">検証するテキストの部分を設定します。 </span><span style="font-family:Verdana,Arial,sans-serif">これを行わない場合、エントリ内で使用していない文字の一致が見つかった場合でも、正規表現は満たされてしまいます。 </span><span style="font-family:Verdana,Arial,sans-serif">どうやってこれを行うのでしょうか? </span><span style="font-family:Verdana,Arial,sans-serif">私たちはそれを私たちの間に置きました/
^$/文字列の開始文字と終了文字。 </span><span style="font-family:Verdana,Arial,sans-serif"> 「^」は行の先頭を指し、「$」は行の末尾を指します。 </span><span style="font-family:Verdana,Arial,sans-serif">正規表現を構築する準備ができました。 </span><span style="font-family:Verdana,Arial,sans-serif"> / ^ [A-ZA-Z- ] + $ / スラッシュ preg_match は、正規表現 </span><span style="font-family:Verdana,Arial,sans-serif"> の開始と終了を定義するために使用されます。これで作業は完了しました。 </span><span style="font-family:Verdana,Arial,sans-serif">たった今やったことがあります。 </span><span style="font-family:Verdana,Arial,sans-serif">ユーザーがダッシュで始まる名前を入力できるようにクラスを定義します。 </span><span style="font-family:Verdana,Arial,sans-serif">これは私たちが防ぎたいことです。 </span><span style="font-family:Verdana,Arial,sans-serif"> したがって、正規表現にいくつかを追加する必要があります。これにより、</span><span style="font-family:Verdana,Arial,sans-serif"> を並べ替えることができなくなります。これを新しいクラスのユーザー名の最初の文字として定義します。 </span><span style="font-family:Verdana,Arial,sans-serif">大文字のみを含めることができます。 </span><span style="font-family:Verdana,Arial,sans-serif"> ここで、これまでに行った作業を組み合わせて、最終結果を取得します。 </span><span style="font-family:Verdana,Arial,sans-serif"> preg_match() は一致しない場合に 0 を返します。</span><span style="font-family:Verdana,Arial,sans-serif">この場合、ユーザーに意味のある情報を表示できるようにエラー変数を設定したいと思います </span><span style="font-family:Verdana,Arial,sans-serif"> /
^[AZ][A-ZA-Z-] + $/</span>
//www.heatpress123.net
// フルネームには文字、ダッシュ、スペースのみを含める必要があり、大文字で始める必要があります。<code class="php plain">// Full Name must contain letters, dashes and spaces only and must start with upper case letter.
<code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php keyword">if
if<code class="php plain">(preg_match(
(preg_match(<code class="php string">"/^[A-Z][a-zA-Z
-]+$/"
"/^[A-Z][a-zA-Z
-]+$/"<code class="php plain">,
, <code class="php variable">$_POST
$_POST<code class="php plain">[
[<code class="php string">"name"
"name"]) === 0)
]) === 0)
<span style="font-family:Verdana,Arial,sans-serif"><code class="php variable">$errName
<code class="php plain">=
$errName<code class="php string">'<p class="errText">Name must be from letters, dashes, spaces and must not start with dash</p>'
= <code class="php plain">;<br>
<br>
<span style="font-family:Verdana,Arial,sans-serif">让我们前进到下valitaion领域,这将是该地址。</span><span style="font-family:Verdana,Arial,sans-serif">这里不多做,因为它可以包含大量的符号。</span><span style="font-family:Verdana,Arial,sans-serif">我们只需要定义一个类持有它们。</span><span style="font-family:Verdana,Arial,sans-serif"> /
^ [A-ZA-Z0-9,_:“'] + $ / </span><span style="font-family:Verdana,Arial,sans-serif">翻译本的regexp:不要灰心丧气,从一开始到地址字符串结束检查如果我们的性格是以下AZ,包括AZ,0-9,空格,下划线,破折号,点,逗号,分号,双和事务所报价。您可以添加任何字符,你认为可能是一个地址的一部分。的东西这里要注意的是,当我们有引号的话,我们必须把他们面前的一个转义字符。</span>
'<p class="errText">名前は文字、ダッシュ、スペースで構成する必要があり、ダッシュで始めることはできません</p>'
;
次の検証フィールドに進みます。これがアドレスになります。
// Address must be word characters only
/
^[A-ZA-Z0-9,_:"'] + $/<code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php keyword">if
(preg_match(
"/^[a-zA-Z0-9
_-.,:"
']+$/
", $_POST["
。
address"]) === 0)
// アドレスは単語文字のみである必要があります
if( preg_match("/^[a-zA-Z0-9
_-.,:"']+$/", $_POST["アドレス"]) === 0)
$errAddress
<code class="php plain">=
'<p class="errText">Address must be only letters, numbers or one of the following _ - . , : " '</p>
';<br>
<br>
<span style="font-family:Verdana,Arial,sans-serif">我们的下一个任务是创建一个正则表达式验证电子邮件。</span><span style="font-family:Verdana,Arial,sans-serif">我们在这里要包括未来的另一表达,这是预定义类的CONSTANS,represend。</span><span style="font-family:Verdana,Arial,sans-serif">这里的人的名单,我们将使用:</span><span style="font-family:Verdana,Arial,sans-serif"> W
= [0-9A-ZA-Z_]类,包括数字,字母和下划线。</span><span style="font-family:Verdana,Arial,sans-serif"> D = [0-9]类只包括数字</span><span style="font-family:Verdana,Arial,sans-serif"> 这些常量节省大量的输入和使源代码更容易阅读和理解。</span><span style="font-family:Verdana,Arial,sans-serif">什么是电子邮件的面具?</span><span style="font-family:Verdana,Arial,sans-serif">第一部分的用户名可以包含字母,数字,点和下划线字符。</span><span style="font-family:Verdana,Arial,sans-serif">它以字母开始,如果我们有点,它必须由字母后跟。</span><span style="font-family:Verdana,Arial,sans-serif">然后,它必须遵循的@符号和再次的第一部分。</span><span style="font-family:Verdana,Arial,sans-serif">在最后,我们必须有2至4个字母的一个点。</span><span style="font-family:Verdana,Arial,sans-serif">每当我们有在regexp的特殊含义的字符,我们要使用它作为字符,我们必须以反斜杠转义。</span>
// メールマスク<code class="php plain">// Email mask
if<code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php keyword">if
(preg_match(<code class="php plain">(preg_match(
"/^[a-zA-Z]w+(.w+)*@w+(.[0-9a-zA-Z] +)*.[a-zA-Z]{2,4}$/"<code class="php string">"/^[a-zA-Z]w+(.w+)*@w+(.[0-9a-zA-Z]+)*.[a-zA-Z]{2,4}$/"
,<code class="php plain">,
$_POST<code class="php variable">$_POST
[<code class="php plain">[
"メール"<code class="php string">"email"
])
=== 0)<code class="php plain">])
=== 0)
<span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php variable">$errEmail
<code class="php plain">= '<p class="errText">Email must comply with this mask: chars(.chars)@chars(.chars).chars(2-4)</p>'
;<br>
<br>
<span style="font-family:Verdana,Arial,sans-serif">验证字符串是护照。</span><span style="font-family:Verdana,Arial,sans-serif">它只能包含数字,是10位或12位数字。</span><span style="font-family:Verdana,Arial,sans-serif">但是,我们如何设置我们要多少个字符。</span><span style="font-family:Verdana,Arial,sans-serif">我们把所需数量的characteras
parences {}和正则表达式看起来像这样/ ^ D {10} $ / / ^ D {12} /美元。</span><span style="font-family:Verdana,Arial,sans-serif">我们如何结合这两个词语,让我们使用一个或其他。</span><span style="font-family:Verdana,Arial,sans-serif">我们使用。</span><span style="font-family:Verdana,Arial,sans-serif">它的标志是“|”。</span><span style="font-family:Verdana,Arial,sans-serif">我们的声明是完整/
^ D {10} $ | ^ D {12} $ /。</span>
// パスポートは数字のみである必要があります<code class="php plain">// Passport must be only digits
if<code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php keyword">if
(preg_match(<code class="php plain">(preg_match(
"/ ^d{10}$|^d{12}$/"<code class="php string">"/^d{10}$|^d{12}$/"
,<code class="php plain">,
$_POST<code class="php variable">$_POST
[<code class="php plain">[
"パスポート"<code class="php string">"passport"
])
=== 0)<code class="php plain">])
=== 0)
<span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana, Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font- family:Verdana,Arial,sans-serif"><code class="php variable">$errPassport<code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php variable">$errPassport
<code class="php plain">= '<p class="errText">パスポートは 10 桁または 12 桁でなければなりません</p>'<code class="php string">'<p class="errText">Passport must be 10 or 12 digits</p>'
;<code class="php plain">;<br>
<br>
<span style="font-family:Verdana,Arial,sans-serif">我将提出一个电话面具。</span><span style="font-family:Verdana,Arial,sans-serif">它可以是一个很大的不同,但它是笑着的,不够可以很容易地定制。</span><span style="font-family:Verdana,Arial,sans-serif">你只定义在每一个电话号码的一部分的diggits数量和选择分隔符。</span><span style="font-family:Verdana,Arial,sans-serif">它可以是任何你想要的符号。</span><span style="font-family:Verdana,Arial,sans-serif">邮编也是很容易实现。</span>
私たちは、電卓面装備を提案します。これは 1 つでも構いませんは、各電信番号の一部にのみ定義されています。 任意の任意のシンボルを使用できます。邮编も簡単に実現できます。 🎜>
// 電話マスク 1-800-999-9999
<code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php keyword">if
(preg_match(
"/^d{1}-d{3}-d{3}-d{4}$/"
,
$_POST
[
"phone"
])
=== 0)
<span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana, Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font- family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php variable">$errPhone<code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php variable">$errPhone
= <code class="php plain">=
'<p class="errText">電話は次のマスクに準拠する必要があります: 1-333-333-4444</p>'<code class="php string">'<p class="errText">Phone must comply with this mask: 1-333-333-4444</p>'
;<code class="php plain">;
// 郵便番号は 4 桁である必要があります<code class="php plain">// Zip must be 4 digits
<code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php keyword">if
(preg_match(
"/^d{4}$/"<code class="php string">"/^d{4}$/"
,
$_POST
[
" zip"<code class="php string">"zip"
])
=== 0)
<span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana, Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font- family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php variable">$errZip<code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php variable">$errZip
= <code class="php plain">=
'<p class="errText">郵便番号は 4 桁でなければなりません</p>'<code class="php string">'<p class="errText">Zip must be 4 digits</p>'
;<code class="php plain">;
现在,我们会日期掩码。它看起来像这样:YYYY-MM-DD的。我们的日期将被只能由diggits。现在你已经如何设置一年的长度,但月份和日期可以是1和2之间的长度diggits。我们设置两个值由逗号分隔{1,2}。这意味着,在此区间的所有数字都是有效的价值。
现在,我们会日期掩码。它見起来私達の日期は数字のみで可能です。 一年の長さはすでに設定されていますが、月と日の長さは 1 桁と 2 桁の間である可能性があります。私たちは 2 つの値を区切り{1,2}に配置しています。これは、この区切りにあることを意味します
// Date mask YYYY-MM-DD
// 日付マスク YYYY-MM-DD
<code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php keyword">if
(preg_match(
"/^[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}$/"
,
$_POST
[
"date"
])
=== 0)
<font style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana, Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font- family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php 変数">$errDate<code class="php plain"><font style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php variable">$errDate
= <code class="php plain">=
'<p class="errText">日付は次のマスクに準拠する必要があります: YYYY-MM-DD</p>'<code class="php string">'<p class="errText">Date must comply with this mask: YYYY-MM-DD</p>'
;<code class="php plain">;
过去的事情,在我们的注册检查 - 验证的形式是我们的用户的用户名和密码。用户名可以是任何字符串,包括字母,diggits和uderscore字符(“W”预定义类)。我们想要的用户名至少5个字符长。这是由这个声明{5}
accomplised。逗号后的遗漏值意味着它可以是任何值相等或更大,5。
登録時に最後にチェックしたのは、確認フォームでした、ユーザーのユーザー名とパスワードでした。 ユーザー名には、文字、数字、ユーダースコア文字 (「W」事前定義クラス) を含む任意の文字列を使用できます。 ユーザー名の長さは少なくとも 5 文字にする必要があります。 これは、このステートメント {5} によって提供されます。
遵守されました。 カンマの後の値が欠落している場合は、5 以上の任意の値を指定できることを意味します。
// User must be digits and letters
<code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php keyword">if
(preg_match(
// ユーザーは数字と文字である必要があります<code class="php string">"/^[0-9a-zA-Z_]{5,}$/"
,
$_POST
[
"user"
<font style="font-family:Verdana,Arial,sans-serif"><code class="php plain">])
=== 0)
"/^[0 -9a-zA-Z_]{5,}$/"
"user"
<font style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><font style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php variable">$errUser
<code class="php plain">= '<p class="errText">User must be bigger that 5 chars and contain only digits, letters and underscore</p>'
;<br>
<br>
<span style="font-family:Verdana,Arial,sans-serif">一个好的密码是最难的事来检查。</span><span style="font-family:Verdana,Arial,sans-serif">要通过验证测试,它必须包含至少一个小写字母,大写字母和一个数字。</span><span style="font-family:Verdana,Arial,sans-serif">这将使它难以打破。</span><span style="font-family:Verdana,Arial,sans-serif">一个是要知道在我们开始之前
- 点代表任意字符。</span><span style="font-family:Verdana,Arial,sans-serif">我们的目的,我们必须做出一些团体代表密码。</span><span style="font-family:Verdana,Arial,sans-serif">它们被定义使用的parences的()。</span><span style="font-family:Verdana,Arial,sans-serif">每个组将检查的特定条件。</span><span style="font-family:Verdana,Arial,sans-serif">第一个将检查我们的字符串的长度。</span><span style="font-family:Verdana,Arial,sans-serif">它必须等于或大于8大。</span><span style="font-family:Verdana,Arial,sans-serif">?=被称为正定性超前。</span><span style="font-family:Verdana,Arial,sans-serif">一个正lookahead说:“下一个文本必须是这样的,并遵循这些规则。” </span><span style="font-family:Verdana,Arial,sans-serif">所以,当我们采取“一个文本”必须“的类型。{8}”。</span><span style="font-family:Verdana,Arial,sans-serif">我们宣布我们的第一个正则表达式条件(?=
{8})。</span><span style="font-family:Verdana,Arial,sans-serif">它指出,我们的字符串必须是同等或更大,8,可以包含任何字符。</span><span style="font-family:Verdana,Arial,sans-serif">第二条规则,我们要申请密码至少包含一个diggit。</span><span style="font-family:Verdana,Arial,sans-serif">我们再次把我们的字符串和检查对我们的条件(=
* [0-9])。</span><span style="font-family:Verdana,Arial,sans-serif">同样,我们做的其他条件。</span><span style="font-family:Verdana,Arial,sans-serif">一个是小写字母,大写字母和其他(= * [AZ])(= *排序)。</span><span style="font-family:Verdana,Arial,sans-serif">这是我们的密码的最低要求。</span><span style="font-family:Verdana,Arial,sans-serif">用户可能需要更强大的密码。</span><span style="font-family:Verdana,Arial,sans-serif">所以我们加上“*”begining和密码。</span><span style="font-family:Verdana,Arial,sans-serif">这意味着,任何可以插入从0到多。</span>
// パスワードは強力である必要があります<code class="php plain">// Password must be strong
<code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php keyword">if
(preg_match(
"/^.*(?=.{8,})(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z]).*$/"
,
$_POST
[
"pass"
])
=== 0)
<font style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><font style="font-family:Verdana, Arial,sans-serif"><code class="php plain"><font style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font- family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php variable">$errPass<code class="php plain"><font style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><font style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><font style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php plain"><span style="font-family:Verdana,Arial,sans-serif"><code class="php variable">$errPass
= <code class="php plain">=
'<p class="errText">パスワードは 8 文字以上で、少なくとも 1 つの小文字、1 つの大文字、1 つの数字を含む必要があります</p>'<code class="php string">'<p class="errText">Password must be at least 8 characters and must contain at least one lower case letter, one upper case letter and one digit</p>'
;
<br>
<span style="font-family:Verdana,Arial,sans-serif">これは私たちの教程を完了しました。<code class="php plain">;<br>
<br>
<span style="font-family:Verdana,Arial,sans-serif">就这样结束了我们的教程。</span><span style="font-family:Verdana,Arial,sans-serif">你看到一个强大的工具定期experessions和它们如何能够帮助我们的形式输入验证。</span><span style="font-family:Verdana,Arial,sans-serif">他们的方式较复杂,你在这里看到,但知道至少基础是必不可少的。</span><span style="font-family:Verdana,Arial,sans-serif">因此,那些沉重的书籍,并开始阅读。</span><span style="font-family:Verdana,Arial,sans-serif">我希望这些例子可以帮助你的工作。</span>
ご覧くださいその他の方法は、ここで確認できますが、 したがって、これらの重いファイルは、開始されます。これらの例があなたの仕事に役立つことを願っています。
站长行业门户(www.software8.co)文章、希望大家可言建议

PHP and Python each have their own advantages, and the choice should be based on project requirements. 1.PHPは、シンプルな構文と高い実行効率を備えたWeb開発に適しています。 2。Pythonは、簡潔な構文とリッチライブラリを備えたデータサイエンスと機械学習に適しています。

PHPは死にかけていませんが、常に適応して進化しています。 1)PHPは、1994年以来、新しいテクノロジーの傾向に適応するために複数のバージョンの反復を受けています。 2)現在、電子商取引、コンテンツ管理システム、その他の分野で広く使用されています。 3)PHP8は、パフォーマンスと近代化を改善するために、JITコンパイラおよびその他の機能を導入します。 4)Opcacheを使用してPSR-12標準に従って、パフォーマンスとコードの品質を最適化します。

PHPの将来は、新しいテクノロジーの傾向に適応し、革新的な機能を導入することで達成されます。1)クラウドコンピューティング、コンテナ化、マイクロサービスアーキテクチャに適応し、DockerとKubernetesをサポートします。 2)パフォーマンスとデータ処理の効率を改善するために、JITコンパイラと列挙タイプを導入します。 3)パフォーマンスを継続的に最適化し、ベストプラクティスを促進します。

PHPでは、特性は方法が必要な状況に適していますが、継承には適していません。 1)特性により、クラスの多重化方法が複数の継承の複雑さを回避できます。 2)特性を使用する場合、メソッドの競合に注意を払う必要があります。メソッドの競合は、代替およびキーワードとして解決できます。 3)パフォーマンスを最適化し、コードメンテナビリティを改善するために、特性の過剰使用を避け、その単一の責任を維持する必要があります。

依存関係噴射コンテナ(DIC)は、PHPプロジェクトで使用するオブジェクト依存関係を管理および提供するツールです。 DICの主な利点には、次のものが含まれます。1。デカップリング、コンポーネントの独立したもの、およびコードの保守とテストが簡単です。 2。柔軟性、依存関係を交換または変更しやすい。 3.テスト可能性、単体テストのために模擬オブジェクトを注入するのに便利です。

SplfixedArrayは、PHPの固定サイズの配列であり、高性能と低いメモリの使用が必要なシナリオに適しています。 1)動的調整によって引き起こされるオーバーヘッドを回避するために、作成時にサイズを指定する必要があります。 2)C言語アレイに基づいて、メモリと高速アクセス速度を直接動作させます。 3)大規模なデータ処理とメモリに敏感な環境に適していますが、サイズが固定されているため、注意して使用する必要があります。

PHPは、$ \ _ファイル変数を介してファイルのアップロードを処理します。セキュリティを確保するための方法には次のものが含まれます。1。アップロードエラー、2。ファイルの種類とサイズを確認する、3。ファイル上書きを防ぐ、4。ファイルを永続的なストレージの場所に移動します。

JavaScriptでは、nullcoalescingoperator(??)およびnullcoalescingsignmentoperator(?? =)を使用できます。 1.??最初の非潜水金または非未定されたオペランドを返します。 2.??これらの演算子は、コードロジックを簡素化し、読みやすさとパフォーマンスを向上させます。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

SublimeText3 中国語版
中国語版、とても使いやすい
