PHP8.0新函数
参考:<span style="color: rgb(40, 44, 52); font-family: 宋体, "Times New Roman", Times, Georgia, serif; font-size: 14px; orphans: 4; text-align: justify; white-space: pre-wrap; word-spacing: 0.8px;">https://php.watch/versions/8.0/get_debug_type
str_contains()检查另一个字符串是否包含一个指定字符串
返回值:bool
<span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(224, 108, 117) !important">$str</span> <span style="box-sizing: border-box;color: rgb(86, 182, 194) !important">=</span> <span style="box-sizing: border-box;color: rgb(152, 195, 121) !important">'this is my blog'</span>;</span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(224, 108, 117) !important">$res</span> <span style="box-sizing: border-box;color: rgb(86, 182, 194) !important">=</span> <span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">str_contains</span>(<span style="box-sizing: border-box;color: rgb(224, 108, 117) !important">$str</span>, <span style="box-sizing: border-box;color: rgb(152, 195, 121) !important">'my'</span>);</span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(232, 191, 106) !important">var_dump</span>(<span style="box-sizing: border-box;color: rgb(224, 108, 117) !important">$res</span>); <span style="box-sizing: border-box;color: rgb(98, 151, 85) !important">// true</span></span>
str_starts_with()检查一个字符串是否以指定字符串开头
<span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(224, 108, 117) !important">$str</span> <span style="box-sizing: border-box;color: rgb(86, 182, 194) !important">=</span> <span style="box-sizing: border-box;color: rgb(152, 195, 121) !important">'this is my blog'</span>;</span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(224, 108, 117) !important">$res</span> <span style="box-sizing: border-box;color: rgb(86, 182, 194) !important">=</span> <span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">str_starts_with</span>(<span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">haystack</span>:<span style="box-sizing: border-box;color: rgb(224, 108, 117) !important">$str</span>, <span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">needle</span>:<span style="box-sizing: border-box;color: rgb(152, 195, 121) !important">'this'</span>);</span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(232, 191, 106) !important">var_dump</span>(<span style="box-sizing: border-box;color: rgb(224, 108, 117) !important">$res</span>); <span style="box-sizing: border-box;color: rgb(98, 151, 85) !important">// true</span></span>
str_ends_with()检查一个字符串是否以指定字符串结尾
<span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(224, 108, 117) !important">$str</span> <span style="box-sizing: border-box;color: rgb(86, 182, 194) !important">=</span> <span style="box-sizing: border-box;color: rgb(152, 195, 121) !important">'images/2022/a.jpg'</span>;</span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(224, 108, 117) !important">$res</span> <span style="box-sizing: border-box;color: rgb(86, 182, 194) !important">=</span> <span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">str_ends_with</span>(<span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">haystack</span>:<span style="box-sizing: border-box;color: rgb(224, 108, 117) !important">$str</span>, <span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">needle</span>:<span style="box-sizing: border-box;color: rgb(152, 195, 121) !important">'.jpg'</span>);</span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(232, 191, 106) !important">var_dump</span>(<span style="box-sizing: border-box;color: rgb(224, 108, 117) !important">$res</span>); <span style="box-sizing: border-box;color: rgb(98, 151, 85) !important">// true</span></span>
fdiv()Divides two numbers, according to IEEE 754
fdiv
函数允许除以0,得到浮点型-INF
或INF
的结果,而不是报错。
1)报错的案例
<span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">intdiv</span>(<span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">1</span>, <span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">0</span>);</span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(98, 151, 85) !important">// Fatal error: Uncaught DivisionByZeroError: Division by zero in</span></span>
2)fdiv
函数
<span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(232, 191, 106) !important">var_dump</span>(<span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">fdiv</span>(<span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">1</span>, <span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">0</span>)); <span style="box-sizing: border-box;color: rgb(98, 151, 85) !important">// float(INF) </span></span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(232, 191, 106) !important">var_dump</span>(<span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">fdiv</span>(<span style="box-sizing: border-box;color: rgb(86, 182, 194) !important">-</span><span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">1</span>, <span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">0</span>)); <span style="box-sizing: border-box;color: rgb(98, 151, 85) !important">// float(-INF) </span></span>
get_resource_id()返回给定资源的整数标识符
<span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(224, 108, 117) !important">$handle</span> <span style="box-sizing: border-box;color: rgb(86, 182, 194) !important">=</span> <span style="box-sizing: border-box;color: rgb(232, 191, 106) !important">fopen</span>(<span style="box-sizing: border-box;color: rgb(152, 195, 121) !important">'./storage/logs/lumen.log'</span>, <span style="box-sizing: border-box;color: rgb(152, 195, 121) !important">'rt'</span>);</span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box"></span></span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(198, 120, 221) !important">echo</span> (<span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">int</span>) <span style="box-sizing: border-box;color: rgb(224, 108, 117) !important">$handle</span> . <span style="box-sizing: border-box;color: rgb(152, 195, 121) !important">"\n\n"</span>;</span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(198, 120, 221) !important">echo</span> <span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">get_resource_id</span>(<span style="box-sizing: border-box;color: rgb(224, 108, 117) !important">$handle</span>);</span>
get_debug_type()以合适的方式获取变量类型
php8.0以后的版本更推荐使用get_debug_type
1)标量类型
2)类对象或匿名函数
3)资源
我是温新
<span style="color: rgb(40, 44, 52); font-family: 宋体, "Times New Roman", Times, Georgia, serif; font-size: 14px; orphans: 4; text-align: justify; white-space: pre-wrap; word-spacing: 0.7px; background-color: rgba(66, 185, 131, 0.1);">每天进步一点,就一点点