本文為大家介紹php同各種函數判斷0和空的方法,在文章補充介紹了php 語法裡0不等於null為空的解決方法,有興趣的朋友跟著php中文網小編一起學習
函數對0的判斷
$cast_id = 0; var_dump(strlen($cast_id)); //1 var_dump(empty($cast_id)); // true var_dump(isset($cast_id)); //true var_dump(is_null($cast_id));//false
對空的判斷
$cast_id = ""; var_dump(strlen($cast_id)); //0 var_dump(empty($cast_id)); // true var_dump(isset($cast_id)); //true var_dump(is_null($cast_id));//false
#補充:以下跟大家介紹下php 語法裡0不等於null為空的解決方法
今天遇到這樣一個問題是這樣的: php 語句裡,我想判斷一個值大於等於0. 我是使用($value !=null && $value >=0
),回傳的結果為空,這點真的好奇怪。
實驗總結:
php 語句如下:
$index=0; echo "A: ".$index."<br>"; //0 echo "B: ".($index !=null && $index >=0)."<br>";// echo "C: ".(isset($index) && $index >=0)."<br>";//1 echo "D: ".(0 !=null)."<br>";//
結果:
A : 0
B:
C: 1
D:
#要判斷一個數值[此陣列可能為空等]大於等於0, 可用另一個方法: is_numeric($index) === true
$index=array_search($url, $contentOtherStr, true); //值大于等于0, 即存在 if(is_numeric($index) === true) { echo "$url existed. "."<br>"; }else{ echo "$url Add. "."<br>"; array_push($contentOtherStr, $url); }
這很奇怪,終於解決了。 Mark 一下。
總結:php的語句稍微怪異,從其它程式語言轉來的同學們一定多加小心謹慎,注意慣性思維及語法差異點啊,避免陷入坑中。
其它資料:
原因是在PHP中變數是以C語言的結構體來儲存的,空字串和NULL,false都是以值為0儲存的,其中這個結構體有個zend_uchar type;這樣的成員變量,他是用來保存變數的型別的,而空字串的型別是string,NULL的型別是NULL,false是boolean。
這一點可以用echo gettype('');
和echo gettype(NULL);
來列印看看!而===運算子是不單比較值,還有比較型的,所以第三個為false!
另外再說下,php中
= 一個等號是賦值
== 兩個等號是判斷相等且只比較值,不比較型別
===三個等號是判斷值和型別都相等
!= 不等於符號,只比較值,不管型別
!== 不全等符號,比較值與型別
所以空字串(''),false, NULL 和0是值相等而型別不一樣!
注意:
NULL是一種特殊的類型.
兩種情況下為NULL
1. $var = NULL;
2. $var;
3.""、0、"0"、NULL、FALSE、array()、var $var; 以及沒有任何屬性的物件都會被認為是空的,如果var 為空,則回傳TRUE。
您可能感興趣的文章:
#如何在windows環境下使用Composer安裝ThinkPHP5
##
以上是php透過各種函數判斷0和空php實例的詳細內容。更多資訊請關注PHP中文網其他相關文章!

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

方法:1、用“str_replace(" ","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\ \;||\xc2\xa0)/","其他字符",$str)”语句。

查找方法:1、用strpos(),语法“strpos("字符串值","查找子串")+1”;2、用stripos(),语法“strpos("字符串值","查找子串")+1”。因为字符串是从0开始计数的,因此两个函数获取的位置需要进行加1处理。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

SublimeText3 Linux新版
SublimeText3 Linux最新版