Après avoir suivi, vous pouvez suivre ses informations dynamiques en temps opportun
<?php $x = 5; $y = 6; $foo = $x++ + $x--; echo $x."<br>"; echo $y."<br>"; echo $foo."<br>"."<br>"; $bar = ++$y + ++$x; echo $x."<br>"; echo $y."<br>"; echo $bar."<br>"."<br>"; $cup = $x-- + $y--; echo $x."<br>"; echo $y."<br>"; echo $cup."<br>"."<br>"; $paper = ++$x + $x++; echo $x."<br>"; echo $y."<br>"; echo $paper."<br>"."<br>"; $water = $y-- + $x--; echo $x."<br>"; echo $y."<br>"; echo $water."<br>"."<br>"; echo $water + $paper; ?>
2018-06-160個(gè)贊
Cours dans la section correspondante:Opérations logiques de la syntaxe de base de php
用代碼表示:if($x && $y) 如果$x已經(jīng)為false了,后面的$y 就沒(méi)有執(zhí)行必要了。 邏輯或:前面第一個(gè)條件為true了,后面就不用執(zhí)行了。 用代碼表示:if($x || $y) 如果$x已經(jīng)為true了,后面的$y 就沒(méi)有執(zhí)行必要了。 我們寫段代碼來(lái)證明一下: <?php $x = false; $y = 2; if($x && $y++){ echo '真'; }else{ echo '假'; } //結(jié)果還為2,說(shuō)明沒(méi)有執(zhí)行$y++ echo $y; ?> 代碼如下,將兩個(gè)&符改為一個(gè)&符試試: <?php $x = false; $y = 2; if($x & $y++){ echo '真'; }else{ echo '假'; } //再看看結(jié)果 echo $y; ?>
通過(guò)上例我們知道了&&與&的區(qū)別,||和 |的區(qū)別。我們也了解了什么是短路。那我們?cè)谑裁吹胤娇梢杂玫蕉搪纺兀坑幸恍┢婀值膶懛?,我們必須了清楚。其?shí)就是基礎(chǔ)語(yǔ)法的再應(yīng)用。 回顧3.3.1最后一段內(nèi)容: <?php //如果為defined('AUTH')存在AUTH常量則為true,不訪問(wèn)后面的exit了。如果為false則執(zhí)行exit defined('AUTH') or exit('存在安全因素不準(zhǔn)訪問(wèn)'); ?> 上面的一段代碼就是典型的短路應(yīng)用的代碼 exit 的意思是指在此處停止運(yùn)行,退出。后面的PHP代碼不再執(zhí)行了。它有兩種用法: 1,直接exit; 就是直接退出 2,exit(‘提示內(nèi)容’),退出的時(shí)候還給出一段提示內(nèi)容
2018-06-160個(gè)贊
Cours dans la section correspondante:Syntaxe de base PHP?: opérateur ternaire et autres opérateurs
三元運(yùn)算符,相當(dāng)于是if...else結(jié)構(gòu)。不過(guò)三元運(yùn)算符的寫法更加簡(jiǎn)潔,語(yǔ)法格式如下: $x? 真代碼段(只能寫一句代碼):假代碼段(只能寫一句代碼); 代碼如下: <?php $x = true; $x ? $y = 5 : $y = 6; //輸出5 echo $y; ?> 反引號(hào)就更加特殊了,我們經(jīng)常需要顯示IP地址,在PHP里面可不可能顯示我們windows的IP地址呢?用反引號(hào),就可以執(zhí)行我們的命令(不過(guò)有些虛擬服務(wù)器是禁止執(zhí)行這些的命令腳本的): <?php echo '<pre>'; echo `ipconfig`; echo '</pre>'; ?> 上面的代碼你執(zhí)行看看效果,是不是顯示出來(lái)了你機(jī)器的IP地址和一堆和IP相關(guān)的參數(shù)?
2018-06-160個(gè)贊
王同學(xué)家里頭特別有錢,所以他的行程方式和正常人的又有些不一樣。 他的出行方式呢有6種,如下: 1,司機(jī)開車 2,民航 3,自己家的專機(jī) 4,火車動(dòng)車 5,騎馬 6,游輪 他的方式有6種,而骰子也真好有6面。所以,我們用if...elseif...的判斷方式可以實(shí)現(xiàn),但是效率太低了。 還有其他更好的方式嗎?我們可以使用到一種方式就是:switch...case語(yǔ)法。 switch...case的語(yǔ)法結(jié)構(gòu)如下: <?php switch(變量){ //字符串,整型 case 具體值: 執(zhí)行代碼; break; case 具體值2: 執(zhí)行代碼2; break; case 具體值3: 執(zhí)行代碼3; break; default: } ?> switch后放需要判斷的變量,而case后是放結(jié)果。switch后變值為多少,case的值寫的與switch變量執(zhí)相同段的代碼。 上面的break是可選的 上面的default也是可選的 不要在case 后面寫成分號(hào),后面是冒號(hào): 不要在case后面寫判斷區(qū)間,如($foo > 20 或者 $foo == 30) switch里面在變量最好是 整型,字符串,因?yàn)椴紶柵袛喔m合if...else.. 上節(jié)課中我們用到了rand函數(shù),那我們現(xiàn)在來(lái)用rand實(shí)現(xiàn)王思總同學(xué)的問(wèn)題選擇: <?php //定義出行工具 $tool=rand(1,6); switch($tool){ case 1: echo '司機(jī)開車'; break; case 2: echo '民航'; break; case 3: echo '自己家的專機(jī)'; break; case 4: echo '火車動(dòng)車'; break; case 5: echo '騎馬'; break; case 6: echo '游輪'; break; } ?> 上面的代碼我們只需要簡(jiǎn)單修改,就可以實(shí)現(xiàn)我們?cè)谖⑿派厦嫱娴囊粋€(gè)小游戲簡(jiǎn)單的家務(wù)骰子和剪刀石頭布。你想想? 你再做做實(shí)驗(yàn): 我們可以把 case 1 代碼段中的break去掉,你再試試,什么效果? 我們?cè)賮?lái)寫一個(gè)簡(jiǎn)單的星期判斷,寫法也可以變的怪一些喲: <?php //得到今天是星期幾的英文簡(jiǎn)稱 $day = date('D'); switch($day){ //拿學(xué)校舉例,我們讓星期一、二、三是校長(zhǎng)日 case 'Mon': case 'Tue': case 'Wed': echo '校長(zhǎng)日'; break; echo '星期三'; break; case 'Thu': echo '星期四'; break; case 'Fri': echo '星期五'; break; default: echo '周末,周末過(guò)的比周一到周五還要累<br />'; }; ?> 自己做實(shí)驗(yàn)試試: 上面的例子發(fā)現(xiàn),不匹配的時(shí)候就執(zhí)行了defaultk吧? 當(dāng)然你也可以這樣,不過(guò)這種寫太太累了,沒(méi)有if...else更加簡(jiǎn)單。我們不用swith...case來(lái)做true和false判斷
2018-06-170個(gè)贊
環(huán)語(yǔ)句的使用 王同學(xué)需要反復(fù)往返于北京和大連,就是典型的循環(huán)結(jié)構(gòu)。假設(shè)王思總投資這個(gè)項(xiàng)目需要往返大連100次,每次往返都王同學(xué)都會(huì)計(jì)數(shù)一次。難道我們寫一百遍同樣的代碼?顯然對(duì)于智商極高的程序員來(lái)說(shuō)不可能這樣處理。 我們抽象了人類的這種思維。我們定義一種循環(huán)結(jié)構(gòu) <?php //定義需要往返的次數(shù),老外喜歡從0開始計(jì)數(shù),我們也從0開始計(jì) $count = 0; //while后面接布爾值判斷,為真執(zhí)行,為假停止 //$count 小于100的時(shí)候執(zhí)行,也就是$count為0至99的時(shí)候執(zhí)行 //如果$count不小于100了,循環(huán)停止執(zhí)行后續(xù)的代碼 //循環(huán)開始處 while($count < 100){ echo '我是王思總,我是第' . $count .'次出差<br />'; //每次執(zhí)行讓$count+1,這樣的話,就不會(huì)產(chǎn)生$count永遠(yuǎn)小于100的情況了 $count++; //循環(huán)結(jié)束 } echo '后續(xù)代碼'; ?>
2018-06-170個(gè)贊
Cours dans la section correspondante:Fonction de rappel de fonction personnalisée PHP
變量函數(shù)和回調(diào)函數(shù)結(jié)合的一個(gè)章節(jié)。 <?php function woziji($one,$two,$func){ //我規(guī)定:檢查$func是否是函數(shù),如果不是函數(shù)停止執(zhí)行本段代碼,返回false if(!is_callable($func)){ return false; } //我把$one、$two相加,再把$one和$two傳入$func這個(gè)函數(shù)中處理一次 //$func是一個(gè)變量函數(shù),參見變量函數(shù)這一章 echo $one + $two + $func($one,$two); } //我們定義幾個(gè)函數(shù)試試 function plusx2( $foo , $bar){ $result = ($foo+$bar)*2; return $result; } function jian( $x , $y ){ $result = $x - $y; return $result; } //調(diào)用一下函數(shù),woziji,向里面?zhèn)魅雲(yún)?shù)試試 echo woziji(20,10,'plusx2'); //將plusx2改成jian試試結(jié)果 echo woziji(20,10,'jian'); ?> 處理過(guò)程是這樣的: 1.將20賦值給形參$one,10賦值給了$two,而plusx2或者jian這兩個(gè)變量函數(shù),賦值給了$func 2.在woziji這個(gè)函數(shù)中判斷plusx2或者jian是否為函數(shù),不是函數(shù)就return false 停止執(zhí)行了 3.顯示plusx2或者jian是函數(shù)。因此$one = 20, $two =10相加了,相加后,$one和$two又帶入到了了$func($one,$two)中。 4.帶入至里面后而$func,是可變的,可以為plusx2或者jian。如果為plusx2的話,$one = 20,$two = 10 的這個(gè)兩個(gè)結(jié)果又給 了plusx2函數(shù)里面的$foo和$bar 5.$foo + $bar 乘以2后將結(jié)果返回至woziji這個(gè)函數(shù)功能體的運(yùn)算處:$one + $two + $func($one,$two); 6.這樣主得到了運(yùn)算結(jié)果
2018-06-180個(gè)贊
Cours dans la section correspondante:Fonction variable de fonction personnalisée PHP
變量函數(shù)。簡(jiǎn)單回顧一下之前的知識(shí)點(diǎn): <?php $hello = 'world'; $world = '你好'; //輸出的結(jié)果為:你好 echo $$hello; ?> 因?yàn)?hello先被解釋成了world,再world前加上$符就輸出了:你好。 而變量函數(shù)的用法是這樣的: <?php function demo(){ echo '天王蓋地虎'; } function test(){ echo '小雞燉蘑菇'; } $fu = 'demo'; //把$fu變?yōu)榱薲emo,把demo后加上了一個(gè)括號(hào),就執(zhí)行函數(shù)了 $fu(); //把$fu的值改為test字符串再試試? ?>
2018-06-180個(gè)贊
Cours dans la section correspondante:Fonction interne de la fonction personnalisée php
.內(nèi)部函數(shù)名,不能是已存在的函數(shù)名 2.假設(shè)在函數(shù)a里面定義了一個(gè)內(nèi)部函數(shù),不能定用兩次函數(shù)a。 我們下面來(lái)看代碼,你將很快的學(xué)習(xí)會(huì): <?php function foo() { echo '我是函數(shù)foo喲,調(diào)一下我才會(huì)執(zhí)行定義函數(shù)bar的過(guò)程<br />'; function bar() { echo '在foo函數(shù)內(nèi)部有個(gè)函數(shù)叫bar函數(shù)<br />'; } } //現(xiàn)在還不能調(diào)用bar()函數(shù),因?yàn)樗€不存在 bar(); foo(); //現(xiàn)在可以調(diào)用bar()函數(shù)了,因?yàn)閒oo()函數(shù)的執(zhí)行使得bar()函數(shù)變?yōu)橐讯x的函數(shù) bar(); //再調(diào)一次foo()看看是不是會(huì)報(bào)錯(cuò)? foo(); ?> 你會(huì)發(fā)現(xiàn),在上面foo() 函數(shù)內(nèi)部又定義了一個(gè)bar函數(shù),這就是內(nèi)函數(shù)數(shù)。
2018-06-180個(gè)贊
Cours dans la section correspondante:le fichier php contient des fonctions
在實(shí)際開發(fā)中,常常需要把程序中的公用代碼放到一個(gè)文件中,使用這些代碼的文件只需要包含這個(gè)文件即可。這種方法有助于提高代碼的重用性,給代碼的編寫與維護(hù)帶來(lái)很大的便利。在PHP中, 有require、require_once、include、include- once四種方法包含一個(gè)文件。 我們來(lái)對(duì)比他們的不同: 函數(shù) 包含失敗 特點(diǎn) Inlcude 返回一條警告 文件繼續(xù)向下執(zhí)行。通常用于動(dòng)態(tài)包含 Require 一個(gè)致命的錯(cuò) 代碼就不會(huì)繼續(xù)向下執(zhí)行。通常包含極為重要的文件,整個(gè)代碼甭想執(zhí)行 Include_once 返回一條警告 除了原有include的功能以外,它還會(huì)做once檢測(cè),如果文件曾經(jīng)已經(jīng)被被包含過(guò),不再包含 Require_once 一個(gè)致命的錯(cuò) 除了原的功能一外,會(huì)做一次once檢測(cè),防止文件反復(fù)被包含 注意: 1,少用_once帶once,因?yàn)樗鼤?huì)消耗更多的資源去做檢測(cè)的工作。
2018-06-180個(gè)贊
Cours dans la section correspondante:Fonction PHP pour obtenir des informations sur la période
“亞麻跌”是PHP學(xué)習(xí)時(shí)間處理的關(guān)鍵 Y 英文是 year,為年份代表年 ——亞 m 英文代表month,為月份代表——麻 d 英文代表day,為日期 代表——跌 所以我們需要輸出前前的年份,月份,日期的話。例如:1997年7月1日,我們就可以用到上面的三個(gè)參數(shù)。 <?php echo date('Y年m月d日'); ?> 你可以運(yùn)行一下代碼試試,看看是不是顯示出來(lái)了。 后面還有幾個(gè)參數(shù): H:m:s 代表的是:時(shí)分秒 h 的英文為:hour 代表小時(shí) i的英文為:minute 代表分鐘 s的英文為:second 代表秒 寫全了就是: <?php //就可以顯示出來(lái)當(dāng)前的時(shí)間了喲。 echo date('Y-m-d H:i:s'); ?>
2018-06-180個(gè)贊
Cours dans la section correspondante:fonction de validation de date php
checkdate可以判斷一個(gè)輸出的日期是否有效。 在實(shí)際的工作中,我們需要經(jīng)常用于檢測(cè)常用于用戶提交表單的數(shù)據(jù)驗(yàn)證。 例如:驗(yàn)證用戶輸入的時(shí)間是否正確。 函數(shù)的語(yǔ)法格式如下: bool checkdate ( int $month , int $day , int $year ) 下例中,我們就可以用一個(gè)代碼來(lái)進(jìn)行實(shí)驗(yàn),寫出一段真實(shí)的例子。試試2011年有沒(méi)有2月29日。 如果是有效的時(shí)間就返回真,如果不是有效的時(shí)間就返回假。 <?php var_dump(checkdate(12, 31, 2018)); var_dump(checkdate(2, 29, 2011)); ?> 輸出結(jié)果: bool(true) bool(false)
2018-06-180個(gè)贊
Cours dans la section correspondante:Fonctions communes de la cha?ne PHP
數(shù)組、字符串和數(shù)據(jù)庫(kù)是我們函數(shù)里面最、最、最常用的三類函數(shù). 我們最常使用的兩個(gè)系列的字符串: 1.單字節(jié)字符串處理函數(shù) 2.多字節(jié)字符串處理函數(shù) 3.字符串編碼轉(zhuǎn)換函數(shù)
2018-06-180個(gè)贊
Cours dans la section correspondante:définition du tableau php
向索引數(shù)組中增加元素 學(xué)習(xí)完了索引數(shù)組的創(chuàng)建,接下來(lái)我們學(xué)習(xí)索引數(shù)組的增加、修改和刪除。 <?php $minren = array( '楊冪', '王珞丹', '劉亦菲', '黃圣依' ); //如何向這$minren這個(gè)數(shù)組中增加元素呢 //猜猜范冰冰的下標(biāo)是多少? $minren[] = '范冰冰'; $minren[100] = '范爺'; //它的下標(biāo)又為幾呢? $minren[] = '李晨'; ?> 總結(jié): 1.向索引數(shù)組中增加元素用: 數(shù)組變量名[]、數(shù)組變量名[鍵值]這兩種方式來(lái)增加元素 2.鍵值的增長(zhǎng)規(guī)則與之前的規(guī)則一樣。都是最大值加1的原則。 向索引數(shù)組中刪除元素 我們還拿剛剛的數(shù)組來(lái)舉例: <?php $minren = array( '楊冪', '王珞丹', '劉亦菲', '黃圣依', '范冰冰' ); //假設(shè)我不喜歡:黃圣依,如何將黃圣依給刪掉掉呢? //如果刪除掉后范冰冰的下標(biāo)為多少呢? //如果在后面再追加一個(gè)元素,會(huì)填掉:“黃圣依”留下來(lái)的空嗎? unset($minren[3]); $minren[] = '金星'; echo '<pre>'; var_dump($minren); echo '</pre>'; ?> 看看效果: QQ截圖20161114130646.png 1.使用unset刪除變量的方式來(lái)刪除數(shù)組里面的值。 2.刪除了中間的值,并不會(huì)讓后面的下標(biāo)向前自動(dòng)移動(dòng)。而是原來(lái)的值為多少就為多少 3.刪除掉其中的某個(gè)值,新加入的值不會(huì)替換掉原來(lái)的位置,依然遵循最大值加1的原則。 修改值 我們學(xué)習(xí)最簡(jiǎn)單的創(chuàng)造、增加和刪除。我相信大家一定能夠推理出如何修改值了。 <?php $minren = array( '楊冪', '王珞丹', '劉亦菲', '黃圣依', '范冰冰' ); $minren[5] = '范爺'; $minren[2] = '亦菲,不要嫁給韓國(guó)人好嗎?'; echo '<pre>'; var_dump($minren); echo '</pre>'; ?> 執(zhí)行上面的代碼,輸出看看結(jié)果。 1.用變量名[鍵] = 新值。就把數(shù)組中的值定的值修改了。
索引數(shù)組的其他聲明方式 通過(guò)上面的例子,我們學(xué)習(xí)到了數(shù)組的聲明。我們來(lái)學(xué)一下數(shù)組的其他聲明方式。 一、直接用之前未聲明的變量,用變量名后面接中括號(hào)的方式聲明數(shù)組。 <?php //直接寫一個(gè)變量后面加上中括號(hào),聲明變量 $qi[] = '可口可樂(lè)'; $qi[10] ='百事可樂(lè)'; echo '<pre>'; var_dump($qi); echo '</pre>'; ?> 二、每次用array()寫的太麻煩了,還可以不用寫array喲,更簡(jiǎn)單。 <?php $minren = [ '楊冪', '王珞丹', 100 => '劉亦菲', '黃圣依', '范冰冰' ]; echo '<pre>'; var_dump($minren); echo '</pre>'; ?> 上面是另外兩種寫法。當(dāng)然,你自己喜歡使用哪一種就使用哪一種來(lái)聲明。
關(guān)聯(lián)數(shù)組的增、刪、改 <?php $drink = [ '美' => '鳳姐', '很美' => '芙蓉姐姐', 'verymei' => '王濤', '心中滴女神呀' => '楊瀾', 100 => '孫儷', '娘娘', ]; //追加方式與索引數(shù)組是一樣的 $drink['ynj'] = '伊能靜'; //輸出試試 echo '<pre>'; var_dump($drink); echo '</pre>'; //刪除一個(gè)試試 unset($drink['verymei']); echo '<pre>'; var_dump($drink); echo '</pre>'; //將芙蓉姐姐 改成:心里美才是真的美 $drink['很美'] = '心里美才是真的美'; echo '<pre>'; var_dump($drink); echo '</pre>'; ?> 你動(dòng)手做做剛剛的實(shí)驗(yàn),你會(huì)發(fā)現(xiàn)操作方式與索引的操作方式一樣。只不過(guò)下標(biāo)在讀取有點(diǎn)不一樣罷了。
一維數(shù)組大家很熟悉,也不難,就是聲明數(shù)組嘛。二維也不難,只是在數(shù)組里面再插一個(gè)或多個(gè)數(shù)組。二維學(xué)好了,多維就學(xué)好了。 <?php $person = array( 'office' => '辦公室', //注意:插入第一個(gè)數(shù)組喲 'family' => array( '爸爸', '媽媽', 'yeye' => '爺爺', 'nn' => '奶奶', ), //注意:又插入了一個(gè)平級(jí)的數(shù)組 'jiaotong' => array( '自行車', '摩托車', '汽車', '飛機(jī)', ), ); echo '<pre>'; var_dump($person); echo '</pre>'; ?> 我們執(zhí)行一下看看效果: QQ截圖20161114131215.png 我們發(fā)現(xiàn)變量person 是一個(gè)數(shù)組類型。有三個(gè)元素(size=3)。 第一個(gè)元素為 office 對(duì)應(yīng)的是一個(gè)字符串“辦公室”, 第二個(gè)元素為family 里面是一個(gè)數(shù)組,這個(gè)數(shù)組又有4個(gè)元素,值分別為:爸爸、媽媽、爺爺、奶奶。 第三個(gè)元素為jiaotong,里面也為一個(gè)數(shù)組有4個(gè)元素,值分別為:自行車、摩托車、汽車、飛機(jī)。 好了,二維好聲明,只要把格式寫對(duì)了,確定是在一個(gè)數(shù)組里面再插入一個(gè)數(shù)組就好。 那如何訪問(wèn):爺爺和爸爸這兩個(gè)值呢? <?php $person = [ 'office' => '辦公室', //注意:插入第一個(gè)數(shù)組喲 'family' => [ '爸爸', '媽媽', 'yeye' => '爺爺', 'nn' => '奶奶', ], //注意:又插入了一個(gè)平級(jí)的數(shù)組 'jiaotong' => [ '自行車', '摩托車', '汽車', '飛機(jī)', ], ]; //訪問(wèn)“爸爸”這什值 echo $person['family'][0]; echo '<br />-----華麗麗的分割線------<br />'; //訪問(wèn)“爺爺”這什值 echo $person['family']['yeye']; echo '<br />-----華麗麗的分割線------<br />'; //訪問(wèn)“汽車”這什值 echo $person['jiaotong'][2]; ?> 我們看看結(jié)果如下: QQ截圖20161114131256.png 上例大家會(huì)發(fā)現(xiàn),訪問(wèn)二維數(shù)組不過(guò)是按照之前的下標(biāo)讀取方式依次向下讀取即可。 先寫上變量,中括號(hào)寫上family這個(gè)下標(biāo),再寫上要訪問(wèn)元素的下標(biāo)。
三維數(shù)組我們說(shuō)了概念,那我們直接上手實(shí)驗(yàn)看看效果: <?php $area = array( 'china' => array( '上海', '湖北', '天津', '北京' => array( 'hd' => '海淀', '朝陽(yáng)', '房山', 'cp' => '昌平', ), '廣東' => array( '深圳', '廣州', '佛山', 'dg' => '東莞', ), ), 'usa' => array( '華盛頓', '舊金山', '紐約' => array( '曼哈頓區(qū)', '皇后區(qū)', '布魯克林區(qū)', ), ), ); echo '<pre>'; var_dump($area); echo '</pre>'; ?> 我們執(zhí)行一下看看效果: QQ截圖20161114131432.png 說(shuō)明: 在變量$area下有二個(gè)數(shù)組,一個(gè)為china,一個(gè)為usa。 在china這個(gè)數(shù)組里面插入了上海、湖北、天津,又插入了北京和廣東。而北京和廣東又是一個(gè)數(shù)組。在北京和廣東這兩個(gè)數(shù)組里面分別有不同的元素。 在這usa 這個(gè)數(shù)組里面插美國(guó)的華盛頓、舊金山和紐約。而紐約下面又是一個(gè)數(shù)組,說(shuō)明了紐約下面的幾個(gè)區(qū)。 所以說(shuō),三維數(shù)組就是在數(shù)組里面再插入一個(gè)數(shù)組(A),在A數(shù)組里面插入一個(gè)數(shù)組。 我們接下來(lái)看看,如何來(lái)讀取里面的值。 <?php $area = array( 'china' => array( '上海', '湖北', '天津', '北京' => array( 'hd' => '海淀', '朝陽(yáng)', '房山', 'cp' => '昌平', ), '廣東' => array( '深圳', '廣州', '佛山', 'dg' => '東莞', ), ), 'usa' => array( '華盛頓', '舊金山', '紐約' => array( '曼哈頓區(qū)', '皇后區(qū)', '布魯克林區(qū)', ), ), ); //讀取華盛頓 echo $area['usa']['0']; //讀?。翰剪斂肆?echo $area['usa']['紐約'][2]; //讀?。翰?echo $area['china']['北京']['cp']; //修改cp下標(biāo)的值改為:西城區(qū) $area['china']['北京']['cp'] = '西城區(qū)'; //輸出看看原來(lái)昌平的值是否發(fā)生了變化 echo $area['china']['北京']['cp']; ?> 通過(guò)上面我們發(fā)現(xiàn)數(shù)組學(xué)習(xí)起來(lái)不難。 學(xué)習(xí)多維數(shù)組的難點(diǎn): 注意格式,將每個(gè)維度的換行、縮進(jìn)弄整齊。就不容易出錯(cuò)了。 【切記】 數(shù)組元素間的分割符為逗號(hào),在數(shù)組中插入數(shù)組的時(shí)候,不要在結(jié)尾處寫成了分號(hào)(;)
2018-06-190個(gè)贊
Cours dans la section correspondante:Liste PHP, chaque fonction parcourt le tableau
我們用圖來(lái)表示: document_2015-09-03_55e84f4676360.png 這樣我們一下子就看明白了。 接下來(lái)我們說(shuō)說(shuō)each的另外一個(gè)特性。讀一次,向后移動(dòng)一個(gè)元素。 <?php //定義一個(gè)變量叫$kongjie(空姐) $kongjie=[ 'gao'=>'穿黑衣服的', 'shou'=>'退特別長(zhǎng)特別細(xì)', 'mei'=>'好白', ]; //第一次each $data = each($kongjie); echo '<pre>'; var_dump($data); echo '</pre>'; echo '-----華麗麗分割線------<br />'; //第2次each $data = each($kongjie); echo '<pre>'; var_dump($data); echo '</pre>'; echo '-----華麗麗分割線------<br />'; //第3次each【執(zhí)行到了最后一個(gè)元素了】 $data = each($kongjie); echo '<pre>'; var_dump($data); echo '</pre>'; echo '-----華麗麗分割線------<br />'; //第4次【此時(shí),后面已沒(méi)有可操作的元素了,看返回什么】 $data = each($kongjie); echo '<pre>'; var_dump($data); echo '</pre>'; echo '-----華麗麗分割線------<br />'; ?> 執(zhí)行結(jié)果: QQ截圖20161114133417.png 總結(jié): 1.讀一次向后移動(dòng)一次【可以想象有一個(gè)記錄的箭頭在移動(dòng)】,將其中的每個(gè)元素拆解成一個(gè)新數(shù)組 2.讀取到最后,沒(méi)有可操作的元素了,所以返回了false。
我們來(lái)看看下面例子: <?php //定義一個(gè)變量叫$kongjie(空姐) $kongjie=[ 'gao'=>'穿黑衣服的', 'shou'=>'腿特別長(zhǎng)特別細(xì)', 'mei'=>'好白', ]; list($key,$value) = each($kongjie); echo $key. '-----' .$value .'<br />'; ?> 運(yùn)行結(jié)果如下: QQ截圖20161114133523.png 總結(jié): 1.each 把變量拆成了4個(gè)元素 2.而list把0 =>gao 賦值給了變量$key 3.list把1 => 穿黑衣服的 賦值給了變量 $value each到最后會(huì)返回false,因此我可以用布爾型循環(huán)while來(lái)配合完成數(shù)組的循環(huán)。 把上面的代碼,輕輕一改就實(shí)現(xiàn)了如下效果: <?php //定義一個(gè)變量叫$kongjie(空姐) $kongjie=[ 'gao'=>'穿黑衣服的', 'shou'=>'退特別長(zhǎng)特別細(xì)', 'mei'=>'好白', ]; while(list($key,$value) = each($kongjie)){ echo $key. '-----' .$value .'<br />'; } ?> 執(zhí)行演示: QQ截圖20161114133617.png 總結(jié): 1.循環(huán)一次,執(zhí)行一次each,執(zhí)行代碼,然后向后移動(dòng)一個(gè)元素 2.執(zhí)行到最后返回fasle,因此停止執(zhí)行。 3.可以通過(guò)each和list配合實(shí)現(xiàn)foreach一樣的效果。
2018-06-211個(gè)贊
我們來(lái)了解一下他的語(yǔ)法規(guī)則【知識(shí)點(diǎn)要求:默寫】 <?php if(判斷語(yǔ)句1){ 執(zhí)行語(yǔ)句體1 }elseif(判斷語(yǔ)句2){ 執(zhí)行語(yǔ)句體2 }else if(判斷語(yǔ)句n){ 執(zhí)行語(yǔ)句體n }else{ 最后的else語(yǔ)句可選 } //后續(xù)代碼 ?> 上述結(jié)構(gòu)表示: 如果判斷語(yǔ)句1的值為真,則執(zhí)行語(yǔ)句體 1。執(zhí)行完成后進(jìn)入后續(xù)代碼段。 否則轉(zhuǎn)入后面的判斷語(yǔ)句2(elsif),判斷語(yǔ)句2若為真,則執(zhí)行語(yǔ)句體 2。 否則轉(zhuǎn)入后面的判斷語(yǔ)句n(elsif),判斷語(yǔ)句2若為真,則執(zhí)行語(yǔ)句體 n。 如果均不匹配則執(zhí)行else語(yǔ)句。這種循環(huán)嵌套可以不含else語(yǔ)句,即只含有if、elseif語(yǔ)句。 注:elseif()也可以寫成else if()
王同學(xué)是生活極度充滿娛樂(lè)化和享受生活的人。他抵達(dá)北京或者大連的時(shí)候做的事,他抵達(dá)后做的事情,如下: 半夜到達(dá),先去夜店參加假面舞會(huì) 早上抵達(dá),愛在酒店泡個(gè)澡 中午到達(dá),會(huì)吃上一份神戶牛肉 晚上到達(dá),總愛去找朋友去述說(shuō)一下心中的寂寞 我們來(lái)了解一下他的語(yǔ)法規(guī)則【知識(shí)點(diǎn)要求:默寫】 <?php if(判斷語(yǔ)句1){ 執(zhí)行語(yǔ)句體1 }elseif(判斷語(yǔ)句2){ 執(zhí)行語(yǔ)句體2 }else if(判斷語(yǔ)句n){ 執(zhí)行語(yǔ)句體n }else{ 最后的else語(yǔ)句可選 } //后續(xù)代碼 ?> 上述結(jié)構(gòu)表示: 如果判斷語(yǔ)句1的值為真,則執(zhí)行語(yǔ)句體 1。執(zhí)行完成后進(jìn)入后續(xù)代碼段。 否則轉(zhuǎn)入后面的判斷語(yǔ)句2(elsif),判斷語(yǔ)句2若為真,則執(zhí)行語(yǔ)句體 2。 否則轉(zhuǎn)入后面的判斷語(yǔ)句n(elsif),判斷語(yǔ)句2若為真,則執(zhí)行語(yǔ)句體 n。 如果均不匹配則執(zhí)行else語(yǔ)句。這種循環(huán)嵌套可以不含else語(yǔ)句,即只含有if、elseif語(yǔ)句。 注:elseif()也可以寫成else if() 我們把上面的代碼用流程圖的形式表示清楚就如下圖了: 2015-08-08/55c5966bd7af5 我們可以把王思總同學(xué)的例子通過(guò)PHP代碼表示出來(lái),代碼表示結(jié)果如下: <?php //定義一個(gè)隨機(jī)變量,抵達(dá)時(shí)間,隨機(jī)0點(diǎn)至23點(diǎn) $dida = rand(0,23); if($dida > 6 && $dida < 10){ echo '我愛泡澡'; }else if($dida >10 && $dida < 14){ echo '吃神戶牛肉'; }else if($dida >=19 && $dida < 22){ echo '找一個(gè)朋友聊聊內(nèi)心的寂寞'; }elseif($dida > 22 && $dida <= 23){ echo '泡澡'; }elseif($dida >= 1 && $dida <3){ echo '泡澡'; }else{ echo '睡覺(jué)或者工作'; } ?>
2018-06-170個(gè)贊