php字符串自身计算及与数值计算用法详解
当一个字符串被当作一个数值来取值,其结果和类型如下:
如果该字符串没有包含 ‘.’,’e’ 或 ‘E’ 并且其数字值在整型的范围之内(由 PHP_INT_MAX 所定义),该字符串将被当成 integer 来取值。其它所有情况下都被作为 float 来取值。
该字符串的开始部分决定了它的值。如果该字符串以合法的数值开始,则使用该数值。否则其值为 0(零)。合法数值由可选的正负号,后面跟着一个或多个数字(可能有小数点),再跟着可选的指数部分。指数部分由 ‘e’ 或 ‘E’ 后面跟着一个或多个数字构成。
如下会被转成整数:
[+/-][0-9][*]
如下会被转成浮点型数:
[+/-][0-9][.][0-9][e/E][0-9][*]
$r = '123' + 1; var_dump($r);// 输出结果 int(124)$r = '123.4' + 1; var_dump($r);// 输出结果 float(124.4)$r = '1.5e4' + 1; var_dump($r);// 输出结果 float(15001)$r = '123456789123456789' + 1; var_dump($r);// 输出结果 float(1.2345678912346E+17)$r = '123abc' + 1; var_dump($r);// 输出结果 int(124)$r = '123e1abc' + 1; var_dump($r);// 输出结果 float(1231)$r = '123.abc' + 1; var_dump($r);//输出结果 float(124)$r = '+123abc' + 1; var_dump($r);// 输出结果 int(124)$r = '-123abc' + 1; var_dump($r);// 输出结果 int(-122)$r = 'abc' + 1; var_dump($r);// 输出结果 int(1)
已经确定需要的是整数(浮点数),则可以使用intval()(floatval())先将字符串转换成整数(浮点数),然后再与其他数值进行计算。
一。PHP中数值型字符串相加
1.若两个字符串开头没有有效数值或不是数值型字符串,这两个字符串相加时都看成0;
$a="abc"; $b="b01"; $a+$b是0
2.两个数值型字符串相加时,有效数字进行相加。
$a="100"; $b="01a"; $a+$b=101;
3/如果字符串中带有‘.’,'e','E'时,按float型数字处理。
$a="100"; $b="12.6a"; $a+$b=112.6;
$a='10'; $b='12.3e3'; $a+$b同样为float型float(12310)
二.php中两个字符串相比较(< > ==);
1.php中两个字符串比较是否相等,一般不用(==),因为(==)会改变原有数据类型,而是用strcmp(str1,str2)系列函数strcmp($str1,$str2);(strcmp是强制转化为string型进行比较)。
$a='123'; $b='123.';($b后多了一个小数点)
但是有(==)进行比较是结果却是true
var_dump($a==$b);
所以一般不用(==)进行字符串的比较。
另外,一个数字与一个字符串进行比较时,字符串会转化为int或float型(numberic_string含有‘.’,'e','E')。
‘abc’转化为int(0); ‘12ab’转化为int(12); ‘12.3e3'转化为float(12300);
2.( > < )的比较
2-1:如果是两个字符串的比较,则逐个比较对应的字符的ascii码。
2-2:如果是数字与字符串进行比较,字符串先转化为数字,然后进行比较。
2-3:如果是两个数字型字符串(纯数字型字符串)进行比较,则这两个字符串首先转化为数字再进行比较。
$a='100'; $b='20'; 则$a>$b;
但是
如$a=''100a; $b='20';时, 结果为$a<$b;
Atas ialah kandungan terperinci php字符串自身计算及与数值计算用法详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Dalam bab ini, kita akan memahami Pembolehubah Persekitaran, Konfigurasi Umum, Konfigurasi Pangkalan Data dan Konfigurasi E-mel dalam CakePHP.

PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

Untuk bekerja dengan tarikh dan masa dalam cakephp4, kami akan menggunakan kelas FrozenTime yang tersedia.

Bekerja dengan pangkalan data dalam CakePHP adalah sangat mudah. Kami akan memahami operasi CRUD (Buat, Baca, Kemas Kini, Padam) dalam bab ini.

Untuk mengusahakan muat naik fail, kami akan menggunakan pembantu borang. Di sini, adalah contoh untuk muat naik fail.

CakePHP ialah rangka kerja sumber terbuka untuk PHP. Ia bertujuan untuk menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP adalah berdasarkan seni bina seperti MVC yang berkuasa dan mudah difahami. Model, Pandangan dan Pengawal gu

Dalam bab ini, kita akan mempelajari topik berikut yang berkaitan dengan penghalaan ?

Pengesah boleh dibuat dengan menambah dua baris berikut dalam pengawal.
