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