PHP求体重成绩函数,PHP数组
數(shù)組
提出一個(gè)問題:
一個(gè)養(yǎng)雞場有6只雞,他們的體重分別為3kg,5kg,1k個(gè),3.4kg,2kg,6.kg
請問這六只雞的總體重是多少平均體重是多少請你用現(xiàn)在掌握的技術(shù)編一個(gè)程序
現(xiàn)在我們使用現(xiàn)有的技術(shù)來解決問題
$hen1=3;
$hen2=5;
$hen3=1;
$hen4=3.4;
$hen5=2;
$hen6=50;
如果我們的變量很多,如果我們分別取變量名,顯示程序無法控制
怎么辦
我們可以使用一個(gè)新的數(shù)據(jù)類型array數(shù)組,來統(tǒng)一管理這一組數(shù)
什么是數(shù)組
可以用于存放多個(gè)數(shù)據(jù)的數(shù)據(jù)類型
快速入門:來解決上述問題
$hens[0]=3;
$hens[1]=5;
$hens[2]=1;
$hens[3]=3.4;
$hens[4]=2;
$hens[5]=50;
$hens[6]=10;
$allWeight=0;
for($i=0;$i
echo"第".$i."只雞體重".$hens[$i]."
";
$allWeight+=$hens[$i];
}
echo"共有".count($hens)."只雞";
echo"
";
echo"總體重是=".$allWeight."平均體重=".$allWeight/count($hens);
?>
數(shù)組創(chuàng)建
在php中,數(shù)組就是關(guān)鍵字和值的組合,我們可以這樣創(chuàng)建
1,創(chuàng)建數(shù)組
$arr[0]=121;
$arr[1]=44;
$arr[2]=43;
幾個(gè)概念:
[0] - >這個(gè)稱為下標(biāo),或者關(guān)鍵字
$arr[0] - >這個(gè)稱為數(shù)組的一個(gè)元素
$arr[0]=121; 121表示$arr[0]元素對應(yīng)的值
$arr- >這個(gè)是該數(shù)組的名稱
在php數(shù)組中,元素存放的值可以是任意數(shù)據(jù)類型
$arr[0]="123";
$arr[1]="hello";
$arr[2]="45.2";
$arr[3]=true;
$arr[4]=null;//即使放入了一個(gè)null,也要占用一個(gè)空間
//遍歷一下
for($i=0;$i
echo'
'.$arr[$i];
}
echo"數(shù)組大小".count($arr);
?>
2,創(chuàng)建數(shù)組的
第二種方法
基本語法
$數(shù)組名= array(值,.....);
舉例說明:
$arr=array(23,"hello",234.1);
//遍歷一下
for($i=0;$i< count ($arr);$i++) {
echo'
'.$arr[$i];
}
echo"
數(shù)組大小". count ($arr);
?>
3,第三種方式
(默認(rèn)情況下,我們的元素下標(biāo)是從0開始給你編號,但是,我們可以自己指定)
基本語法:
$arr['logo']="北京";
$arr['hsp']=123;
...
或者
$arr=array("logo"=>"北京","hsp"=>123,4=>234);
案例演示
$arr['logo'] ="北京";
$arr['hsp'] ="123";
/* for($i=0;$i
echo '
'.$arr[$i];這樣遍歷不行*/
//這個(gè)foreach使用范圍更廣。
foreach($arras$key=>$val) {
echo$key."=".$val.'
';
}
?>
圖解理解:
?特別說明:
1,如果我們創(chuàng)建一個(gè)數(shù)組時(shí),沒有給某個(gè)元素指定下標(biāo),php就會(huì)自動(dòng)的用目前的最大的那個(gè)下標(biāo)值(整數(shù)),加上1作為該元素的下標(biāo)
$arr=array(5=>"logo",78,123.1);
//我要訪問"logo"這個(gè)值
echo$arr[5].'
';
echo$arr[7];
?>
2,如果我們給某個(gè)元素的下標(biāo)一樣,則會(huì)覆蓋原來的值
$arr=array(5=>"logo",78,123.1);
//我要訪問"logo"這個(gè)值
$arr[5]="yes";
echo$arr[5].'
';
echo$arr[7];
?>
3,如果我們使用true,false,null作為key,則應(yīng)當(dāng)怎樣訪問
$arr[true]="hello";
$arr[false]="world";
$arr[null]="no!!";
echo$arr[1].'
';
echo$arr[0].'
';
echo$arr[null];
echo'
'.$arr[""];
$arr[123.3]="yuhua";
echo$arr[123].'
';
?>
4,print_r與var_dump的用法。
$arr[true]="hello";
$arr[false]="world";
$arr[null]="yes";
//我們通常可以使用print_r來顯示整個(gè)數(shù)組的情況
//即:Array ( [1] => hello [0] => world [] => yes )
print_r($arr);
echo"
";
//var_dump可以更加詳細(xì)的顯示數(shù)組的信息
//即:array(3) { [1]=> string(5) "hello" [0]=> string(5) "world" [""]=> string(3) "yes" }
var_dump($arr);
?>
5,訪問數(shù)組時(shí),不要越界
一維數(shù)組的引用
基本語法:
$數(shù)組名[鍵值];
如果你寫的鍵值不存在,則會(huì)報(bào)告
Notice: Undefined offset
//php數(shù)組可以動(dòng)態(tài)的增長
$arr=array(2,3);
$arr[4]=56;
//這里說明php數(shù)組可以動(dòng)態(tài)的增長。
echo$arr[4];
?>
php數(shù)組相關(guān)的函數(shù)說明
1,count函數(shù)
基本語法:
count($數(shù)組名),可以統(tǒng)計(jì)該數(shù)組共有過少個(gè)元素
2,is_array
3,print_r和var_dump
4,explode —使用一個(gè)字符串分割另一個(gè)字符串
此函數(shù)返回由字符串組成的數(shù)組
案例
//示例1
$pizza="piece1 piece2 piece3 piece4 piece5 piece6";
$pieces= explode(" ",$pizza);
echo$pieces[0].'
';// piece1
echo$pieces[1];// piece2
?>
php數(shù)組遍歷的四個(gè)方法
?如果使用for whiledo..while要確定該數(shù)組的下標(biāo)是從0開始順序排放的
$color=array('red','blue','black');
//for
for($i=0;$i< count ($color);$i++) {
echo'
'.$color[$i];
}
echo"
**********";
//while
$i=0;//循環(huán)控制變量
while($i< count ($color) ) {
echo'
'.$color[$i];
$i++;
}
//do.. while
echo"
**********";
$i=0;
do{
echo'
'.$color[$i];
$i++;
}while($i< count ($color) );
//foreach
echo"
*********";
foreach($coloras$k=>$v) {
echo"
$k=$v";
//echo '
$k=$v'; //雙引號與單引號的區(qū)別。
}
?>
unset使用unset函數(shù)可以銷毀某個(gè)元素,也可以銷毀某個(gè)變量
$arr[0]=112;
$arr[1]=23;
$arr[2]="hello";
echo"
刪除前********
";
echo$arr[1];
unset($arr[1]);
echo"
刪除后********";
echo$arr[1];
print_r($arr);
?>
數(shù)組運(yùn)算符
$a=array("a"=>"apple","b"=>"banana");
$b=array("a"=>"pear","b"=>"tea","c"=>"cherry");
$c=$a+$b;
//echo '$a+$b result
';
var_dump($c);
echo"
";
$c=$b+$a;
//echo '$b+$a result
';
var_dump($c);
?>
結(jié)果:
array(3) { ["a"]=> string(5) "apple" ["b"]=> string(6) "banana" ["c"]=> string(6) "cherry" }
array(3) { ["a"]=> string(4) "pear" ["b"]=> string(3) "tea" ["c"]=> string(6) "cherry" }
數(shù)組的案例:
array11.php
請輸入學(xué)生的成績,用空格隔開
result.php
//接受用戶提交的學(xué)生成績
$grades=$_REQUEST['grade'];
//echo 'grade='.$grades;
//拆分,對成績進(jìn)行分割
$grades=explode(" ",$grades);
$allGrades=0;
//遍歷
foreach($gradesas$k=>$v){
echo"
$k=$v";
$allGrades+=$v;//隱藏轉(zhuǎn)換string->float
}
//round函數(shù)
echo"
平均成績是=".round($allGrades/count($grades),2);
?>
結(jié)果:
0=22
1=22
2=2平均成績是=15.33
深入一點(diǎn):
1如何將上面2個(gè)頁面整合為一個(gè)頁面
2還要求平均成績保留到小數(shù)點(diǎn)后兩位
3如何實(shí)現(xiàn)下面的功能
(百度里,關(guān)鍵字提交,不會(huì)給你刪掉,就是這個(gè)原理)
array12.php
請輸入學(xué)生的成績,用空格隔開
error_reporting ( E_ALL ^ E_NOTICE );//關(guān)閉notice提示
//接受用戶提交的學(xué)生成績
$grades1=$_REQUEST['grade'];
//echo 'grade='.$grades;
//拆分,對成績進(jìn)行分割
$grades= explode (" ",$grades1);
$allGrades=0;
//遍歷
foreach($gradesas$k=>$v) {
//echo "
$k=$v";
$allGrades+=$v;//隱藏轉(zhuǎn)換string->float
}
?>
echo"平均成績是=". round ($allGrades/ count ($grades),2);
//○2 round(,)方法
?>
如何關(guān)閉notice級別的提示
1,在php.ini文件中,改動(dòng)error_reporting
改為:
error_reporting = E_ALL & ~E_NOTILCE
2,在你想禁止notice錯(cuò)誤提示的頁面加入下面的代碼
/*Report all errors except E_NOTICE*/
error_reporting(E_ALL^E_NOTICE);
總結(jié)
以上是生活随笔為你收集整理的PHP求体重成绩函数,PHP数组的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql as tmp,启动mysql
- 下一篇: 批处理停止php服务,通过批处理启动和停