国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁(yè) > news >正文

12個(gè)優(yōu)秀平面設(shè)計(jì)素材網(wǎng)站南京seo整站優(yōu)化技術(shù)

12個(gè)優(yōu)秀平面設(shè)計(jì)素材網(wǎng)站,南京seo整站優(yōu)化技術(shù),企業(yè)網(wǎng)站數(shù)防泄露怎么做,中央廣播電視總臺(tái)光華路辦公區(qū)是否可以使用速記三元來(lái)檢查變量是否已設(shè)置,而不是是否計(jì)算結(jié)果為零或非零? 例如,我試過(guò): $var 0; echo (string) $var ?: (string) false ?: 2;但由于前兩個(gè)表達(dá)式的計(jì)算結(jié)果均為“0”或“false”,因此顯示為 2?!?article class="baidu_pl">

是否可以使用速記三元來(lái)檢查變量是否已設(shè)置,而不是是否計(jì)算結(jié)果為零或非零?

例如,我試過(guò):

$var = 0;
echo (string) $var ?: (string) false ?: 2;

但由于前兩個(gè)表達(dá)式的計(jì)算結(jié)果均為“0”或“false”,因此顯示為 2。

我認(rèn)為也許將它們轉(zhuǎn)換為字符串會(huì)產(chǎn)生不同的結(jié)果,但事實(shí)并非如此。我想零就是零。

我想在分配變量時(shí)使用這種樣式,例如

$get->var = $get->var ?: $setindb ?: $default;

如果設(shè)置了$get->var,我想將$get->var分配給$get->var,否則,檢查db是否有值,否則,使用默認(rèn)值。

我想我會(huì)提到我知道我可以做類似的事情

$get->var = (!empty($get->var)) ? $get->var : ( (!empty($setindb)) ? $setindb : $default )

但你來(lái)判斷哪個(gè)更簡(jiǎn)單:)

【問(wèn)題討論】:

  • 為什么不使用 isset($get->var) 代替?

  • 好吧,在我上面的例子中,不是空的, isset 會(huì)更合適,但這仍然讓我處于同樣的情況。我一直在尋找一種更清潔、更簡(jiǎn)單的方法。

【解決方案1】:

字符串“0”和“false”在 PHP 中被視為?FALSE-y (list of false values) 值。

isset()?為已設(shè)置的變量返回?TRUE?而不是?NULL。?empty()?將檢查變量是否已設(shè)置,并且該變量不是?FALSE?值。所以它會(huì)為“0”返回TRUE。

我認(rèn)為你想要的是你的第三個(gè)代碼 sn-p,但使用isset(),而不是empty()

最簡(jiǎn)單的方法(使用最少的括號(hào))是:

$get->var = isset($get->var) ? $get->var : (isset($setindb) ? $setindb : $default);

由于速記三元返回第一個(gè)參數(shù),你不能使用它,因?yàn)槟菍⑹且粋€(gè)布爾值。 (isset($get->var) ?: $default?將返回?TRUE、FALSE?或?$default,但絕不會(huì)返回?$get->var?的值。)


編輯:也許你想要一個(gè)像合并函數(shù)這樣的東西?據(jù)我所知,PHP 本身并不提供它,但創(chuàng)建起來(lái)很簡(jiǎn)單。請(qǐng)注意,這可能有點(diǎn)難看,因?yàn)樗褂脗鬟f對(duì)函數(shù)的引用。我會(huì)對(duì)這方面的 cmets 感興趣(它有我想的那么糟糕嗎?)。

function coalesce(array $values)
{foreach($values as &$value){if(isset($value))return $value;}return null;
}
$this->var = coalesce(array(&$this->var, &$setindb, $default));

我還沒(méi)有測(cè)試過(guò)上述內(nèi)容。將數(shù)組中的變量作為引用傳遞(&?符號(hào))。我很確定它會(huì)被?coalesce(array(1,"a_string",false));?這樣的東西窒息。

【討論】:

  • 好的,不知道是否有一些技巧(比如強(qiáng)制轉(zhuǎn)換)三元會(huì)檢查除真假以外的技巧

empty()和isset()的區(qū)別及應(yīng)用場(chǎng)景:

a.當(dāng)判斷一個(gè)變量是否定義時(shí),可用isset();

應(yīng)用:表單提交時(shí)用isset($_POST['submit'])的值來(lái)判定是否提交表單。

b.當(dāng)判斷一個(gè)變量是否為空時(shí)(不需要知道其是否賦值),可用empty();

應(yīng)用:表單驗(yàn)證時(shí),需驗(yàn)證必填項(xiàng)值是否為空。

c.當(dāng)判斷一個(gè)變量已經(jīng)存在且不為空,可先用isset(),再用empty();

應(yīng)用:文件上傳時(shí),需判斷$_FILES已賦值,且不為空。
?

http://m.aloenet.com.cn/news/38537.html

相關(guān)文章:

  • 做網(wǎng)站廣告收入會(huì)員卡營(yíng)銷策劃方案
  • 做視頻找空鏡頭那個(gè)網(wǎng)站比較全seo優(yōu)化有百度系和什么
  • 電子商務(wù)網(wǎng)站建設(shè)的技術(shù)綜述論文優(yōu)化排名 生客seo
  • 安卓開(kāi)發(fā)培訓(xùn)北京百度推廣優(yōu)化
  • 做封面的地圖網(wǎng)站app推廣是什么意思
  • 微信知彼網(wǎng)絡(luò)網(wǎng)站建設(shè)電商網(wǎng)站開(kāi)發(fā)平臺(tái)
  • 深圳市寶安區(qū)怎么樣seo網(wǎng)站推廣的主要目的是什么
  • 鄭州鞏義網(wǎng)站建設(shè)全國(guó)人大常委會(huì)委員長(zhǎng)
  • 網(wǎng)站備案截圖網(wǎng)站收錄免費(fèi)咨詢
  • 克隆網(wǎng)站后怎么做查詢關(guān)鍵詞網(wǎng)站
  • 銀川app購(gòu)物網(wǎng)站制作公司西安網(wǎng)站搭建公司
  • 專業(yè)網(wǎng)站設(shè)計(jì)公司哪家好百度投訴中心人工電話號(hào)碼
  • .net網(wǎng)站開(kāi)發(fā)實(shí)例臨沂seo代理商
  • 做黃色網(wǎng)站被抓了怎么處理公司培訓(xùn)課程有哪些
  • 天龍八部私服怎么做網(wǎng)站百度風(fēng)云排行榜
  • 蘇州做網(wǎng)站推廣哪家好網(wǎng)絡(luò)營(yíng)銷策劃書論文
  • 專做動(dòng)漫av的網(wǎng)站市場(chǎng)營(yíng)銷
  • 網(wǎng)站建設(shè)方向百度搜索風(fēng)云榜總榜
  • 廣州企業(yè)推廣seo工資待遇 seo工資多少
  • 有沒(méi)有做維修的網(wǎng)站哪有免費(fèi)的網(wǎng)站
  • 網(wǎng)站收縮欄免費(fèi)自助建站網(wǎng)站
  • 手機(jī)站建網(wǎng)站免費(fèi)
  • 有什么做兼職的網(wǎng)站關(guān)鍵詞長(zhǎng)尾詞優(yōu)化
  • 下載簡(jiǎn)歷模板免費(fèi)百度系優(yōu)化
  • html5效果網(wǎng)站做一個(gè)網(wǎng)站要花多少錢
  • 群站優(yōu)化之鏈輪模式制作網(wǎng)站要花多少錢
  • 做網(wǎng)站要用到數(shù)據(jù)庫(kù)嗎新東方考研班收費(fèi)價(jià)格表
  • 廣州低價(jià)網(wǎng)站建設(shè)黃頁(yè)88
  • 有了域名和空間怎么做網(wǎng)站市場(chǎng)營(yíng)銷的策劃方案
  • 網(wǎng)站建設(shè)術(shù)語(yǔ)解釋在線crm