PHP容易被忽略而出错陷阱 数字与字符串比较_php技巧
0 与任意非数字(或者说,不可转化为数字的字符)前导的字符串比较(操作符为==), 均返回 true.
原因是, 数字与字符串比较时, 先尝试将字符串转换为数字, 再比较, 一个不能转换为数字的字符串, 转换结果为0, 故, 与0比较总返回 true.
更加详细的比较规则, 多种类型的比较规则, 在 PHP手册/语言参考/运算符/比较运算符 可以找到.
在PHP里当两个数字型字符串(只含数字的字符串)进行比较的时候是直接转换成数值进行比较的
如下示例:(注意$a和$b两个变量的最后一位不相等)
//示例1
$a = '511203199106034578';
$b = '511203199106034579';
if ($a==$b) {
echo 'equal';
} else {
echo 'notEqual';
}
?>
运行上面的程序却发现结果为equal(非我们认为的结果)
我们把$a与$b分别加一个字母a进去
//示例2
$a = 'a511203199106034578';
$b = 'a511203199106034579';
if ($a==$b) {
echo 'equal';
} else {
echo 'notEqual';
}
?>
这次输出的是notEqual(正确的结果)
示例1为equal是因为PHP把两个数字型字符串转换成数字型,而这两个数字刚好相等如下示例
$a = 511203199106034578;
$b = 511203199106034579;
echo $a; // 输出 5.1120319910603E+17 即511203199106030000
echo $b; // 输出 5.1120319910603E+17 即511203199106030000
?>
所以我们在示例1中得到的结果是equal
避免出现这种非预期结果的情况是使用类型比较符===如下示例(如果 $a 等于 $b,并且它们的类型也相同)
//示例4
$a = '511203199106034578';
$b = '511203199106034579';
if ($a===$b) {
echo 'equal';
} else {
echo 'notEqual';
}
?>
这样我们就可以得到预期中的notEqual了

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









弊社でよく使っているオフィスソフトはWPSですが、長文の編集ではフォントが小さすぎて見づらい場合が多いので、フォントや文書全体を調整します。たとえば、文書の行間を調整すると、文書全体が非常に鮮明になります。友達全員にこの操作手順を覚えてもらうことをお勧めします。今日はそれを共有します。具体的な操作手順は次のとおりです。ぜひ見てください。調整したいWPSテキストファイルを開き、[スタート]メニューの段落設定ツールバーに小さな行間設定アイコン(図の赤丸部分)が表示されます。 2. 行間隔設定の右下隅にある小さな逆三角形をクリックすると、対応する行間隔の値が表示され、行間隔の 1 ~ 3 倍を選択できます (図の矢印で示すように)。 3. または、段落を右クリックすると、段落が表示されます。

3月2日の統計によると、ビットコインの第2層ネットワークMerlinChainのTVL総額は30億米ドルに達した。このうち、ビットコイン環境資産は90.83%を占め、15億9600万米ドル相当のBTCと4億400万米ドル相当のBRC-20資産が含まれている。先月、マーリンチェーンの合計 TVL はステーキング活動の開始から 14 日以内に 19 億 7,000 万米ドルに達し、昨年 11 月に開始され、同じく最新で同様に目を引くブラストを上回りました。 2月26日、MerlinChainエコシステムにおけるNFTの総額は4億2,000万米ドルを超え、イーサリアムに次いでNFT市場価値が最も高いパブリックチェーンプロジェクトとなった。プロジェクトの紹介 MerlinChain は OKX サポートです

PHPでint型をstring型に変換する方法を詳しく解説 PHPの開発では、int型をstring型に変換する必要に遭遇することがよくあります。この変換はさまざまな方法で実現できますが、この記事では、読者の理解を深めるために、具体的なコード例とともに、いくつかの一般的な方法を詳しく紹介します。 1. PHP の組み込み関数 strval() を使用する PHP には、さまざまな型の変数を文字列型に変換できる組み込み関数 strval() が用意されています。 int型をstring型に変換する必要がある場合、

1. まず pycharm を開いて、pycharm ホームページに入ります。 2. 次に、新しい Python スクリプトを作成し、右クリックして [新規] をクリックし、[Pythonfile] をクリックします。 3. 文字列、コード: s="-" を入力します。 4. 次に、文字列内のシンボルを 20 回繰り返す必要があります (コード: s1=s*20)。 5. 印刷出力コード、コード: print(s1) を入力します。 6. 最後にスクリプトを実行すると、下部に戻り値が表示されます。 - 20 回繰り返しました。

PHP 文字列操作: スペースを効果的に削除する実用的な方法 PHP 開発では、文字列からスペースを削除する必要がある状況によく遭遇します。スペースを削除すると文字列がきれいになり、その後のデータ処理と表示が容易になります。この記事では、スペースを削除するための効果的かつ実践的な方法をいくつか紹介し、具体的なコード例を添付します。方法1: PHP組み込み関数trim()を使用する PHP組み込み関数trim()を使用すると、文字列の両端のスペース(スペース、タブ、改行などを含む)を削除でき、非常に便利で簡単です。使用します。

AMDCAD を win11 にアップグレードした後、コンピューターがフリーズした場合はどうすればよいですか? AMDCAD ソフトウェアのインストール後に起動速度やページの読み込みが遅い場合は、元のシステム設定が最適化されていない可能性があります。 win11~ 1. ハードウェア win11 システムのアニメーションと特殊効果をサポートするには設定が不十分です。現時点では、まずスタート メニュー インターフェイスからシステムの「設定」に入ります。 2. 左上の検索ボックスで「パフォーマンス」を検索し、「Windows の外観とパフォーマンスを調整する」と入力します。 3. 視覚効果インターフェイスの下部にある「最高のパフォーマンスを実現するために調整する」にチェックを入れます。 4. 設定が完了したら、「&」をクリックします。

PHP 文字列操作: 余分なカンマを削除し、カンマのみを保持する 実装のヒント PHP 開発では、文字列処理は非常に一般的な要件です。場合によっては、文字列を処理して余分なカンマを削除し、カンマのみを残す必要があります。この記事では、実装テクニックと具体的なコード例を紹介します。まず、一般的な要件を見てみましょう。複数のカンマを含む文字列があり、余分なカンマを削除して一意のカンマのみを保持する必要があるとします。たとえば、「apple,ba」を置き換えます。

文字列を浮動小数点数に変換するのは PHP の一般的な操作であり、組み込みメソッドを使用して実行できます。文字列を浮動小数点数に正常に変換するには、まず文字列が有効な浮動小数点形式であることを確認してください。以下では、PHP で文字列を浮動小数点数に変換する方法を詳しく説明し、具体的なコード例を示します。 1. (float) キャストを使用する PHP で文字列を浮動小数点数に変換する最も簡単な方法は、キャストを使用することです。強制的に変換するには、文字列の前に (float) を追加します。これにより、PHP が自動的に変換します。
