検索
ホームページphp教程php手册第 4 章 データ処理 - PHP 配列処理 - Zheng Aqi

第 4 章 データ処理 - PHP 配列処理 - Zheng Aqi

Jun 13, 2016 pm 12:07 PM
関数初期化対処する建河情報処理配列

1. 配列の処理:
1.1 配列の作成と初期化:
1. array() 関数は、デフォルトでは、要素 0 が配列の最初の要素です。 sizeof( ) 関数でデータ要素の数を取得します
2. 変数を使用して配列を作成します
compact() は、現在のシンボル テーブル内の変数名を検索し、それを出力配列に追加します。名前と変数 内容がキーの値になります。

コードをコピーします。 コードは次のとおりです。 ?php $num= 10;

$str="string";

$array=array("num","str") ,"配列");
print_r($newarray);
/*Result
array([num]=10 [str]=>string [array]=>array([0]=) >1 [1]=> ;2 [2]=>3))
*/
?>


extract() 配列内のセルを変数に変換します


コードをコピー

コードは次のとおりです:

$array=array("key1" =>1,"key2"=2, "key3"=3); extract($array)

echo "$key1 $key2 $key3";//出力 1 2 3

? >


3. 2 つの配列を使用して配列を作成します


コードをコピーします

コードは次のとおりです:

array_combine(array $keys, array $values ) $a=array('green','red',' yellow'); array(' volcado','apple','banana');

$c=array_combine($a,$b);


4. 指定した範囲の配列を作成します
range( )
5. 配列を自動的に作成します
1.2 キー名と値に対する操作
このセクションでは、よく使用されるものについてのみ説明します
。特定のキーと値が配列内に存在し、使用できるかどうかを確認します。 Array_key_exists() および in_arrary 関数では、isset() は配列内のキー名をチェックします。キー名が NULL の場合、isset() は false を返しますが、array_key_exists() は
を返します。 array_search() 関数は、配列のキー値が存在するかどうかを確認するために使用されます。存在しない場合は、NULL が返されます。
。 key() 関数は、配列

の現在のユニットのキー名を取得できます。 list() 関数は、配列内の値を指定された変数に割り当てます。配列のトラバーサルに非常に便利です。
$arr=array("red","blue","white");
list($red,$blue,$white)=$arr; $red; //レッド
エコー $ブルー; //ブルー
エコー $ホワイト
。 array_fill() と array_fill_keys() は、配列の値とキーを指定された値
で埋めることができます。 array_filp()は配列内のキー名と値を交換することができます。また、交換配列内に同じ値がある場合、同じ値をキー名に変換した後、最後の
を交換します。値は保持されます。 array_keys() 関数と array_values() 関数は、配列内のキー名と値を取得し、新しい配列に保存できます。
。 array_splice(arry $input,int $offset[,int $length[,array $replacement]]) は、配列内の 1 つ以上のセルを削除し、他の値に置き換えます。
。 array_unique() は、元の配列を破壊することなく、配列から重複した値を削除し、新しい配列を返すことができます。
1.3 配列の走査と出力
1. while ループを使用して配列にアクセスします
while、list()、および each() 関数を適用して配列を走査します
2.
3. foreach を使用して配列をループします



コードをコピーします

コードは次のとおりです。


php
$color=array(" a"=>"red","blue","white");
foreach($color as $value)

{ echo $value. "
";//配列の値を出力} foreach($color as $key=>$value)
{

echo $key."=>"。 $value."
"; //配列のキー名と値を出力します

}
?>


例 4.1 ページ上にテキスト ボックスを生成します。ユーザーが生徒のスコアを入力し、フォーム送信後、60未満のスコアを出力します。スコア値は、平均スコアを計算した後に計算され、出力されます。



コードをコピー

コードは次のとおりです:


echo "

"; //新建表单
for($i=1;$i{
//文本框的名字是数组名
echo "学生".$i."的成绩:
";
}
echo ""; //提交按钮
echo "
";
if(isset($_POST['bt'])) //检查提交按钮是否按下
{
$sum=0; //总成绩初始化为0
$k=0;
$stu=$_POST['stu']; //取得所有文本框的值并赋予数组$stu
$num=count($stu); //计算数组$stu元素个数
echo "您输入的成绩有:
";
foreach($stu as $score) //使用foreach循环遍历数组$stu
{
echo $score."
"; //输出接收的值
$sum=$sum+$score; //计算总成绩
if($score{
$sco[$k]=$score; //将分数小于60的值赋给数组$sco
$k++; //数组$sco的键名索引加1
}
}
echo "
低于60分的成绩有:
";
for($k=0;$kecho $sco[$k]."
";
$average=$sum/$num; //计算平均成绩
echo "
平均分为:$average"; //输出平均成绩
}
?>

1.4 数组的排序
1.升序排序 。sort(array $array[,int $sort_flags])
注意:在对含有混合类型值的排序时要小尽,因为可能会产生错误。
asort()也可升序排序,是对数组的值进行排序,但它排序后的数组还保持键名和值之间的关联。
Ksort()对数组的键名排序,排序后键名和值之间的关联不改变。
2.降序排序。 rsort()、arsort()、krsort()
3.多维数组的排序。
4.对数组重新排序。
。shuffle()函数.作用将数组用随机的顺序排列,并删除原有的键名
。array_reverse()函数.将一个数组按相反顺序排序.
5.自然排序
。natsort().对大小写敏感
1.5其它操作
1. 合并数组
array_merge($array1,$array2).合并后将一维数以后的数组都当做一个单元返回。array_merge_recusive()可以在保持现有数组结构下对数组进行合并。
2. 数组的栈操作.
出栈: array_pop($arr);
入栈: array_push($arr,var);
3.取得数组当前单元
1. current()函数能够获取数组内部指针指向的单元的值,但不移动数组的内部指针。
2. next($arr),将指针移到下一个单元。
3. end($arr)将指针移到尾部。
4.数组计算
count()、sizeof()计算数组中的元素个数
array_count_values()函数可以计算数组中的一个值出现的次数
例:4.2 处理表格数据
接收用户输入的学生学事情、姓名、成绩等信息,将接收到的信息存入数组并按照成绩升序排序。之后再以表格输出。.

复制代码 代码如下:









for($i=0;$i {?>



学号
姓名
成绩

入力タイプ=テキスト名="XM[]">

}?>



注: 学籍番号の値は繰り返すことはできません



if(isset($_POST['bt_stu'])) //ボタンが押されたかどうかを判定します
{
$XH=$_POST['XH']; //受信すべての生徒番号の値を取得し、配列に格納 $XH
$XM=$_POST['XM'] //すべての名前の値を取得し、配列に格納 $XM
$CJ=$_POST['CJ']; //すべてのスコアの値を受け取り、配列に格納 $CJ
array_multisort($CJ,$XH,$XM);上記の 3 つの配列を並べ替えます。$CJ がプライマリ配列です
for($i=0;$i$sum[$i]=array($XH[$ i],$XM[$i],$CJ[$i]); // 3 つの配列の値をバイナリ ディメンション配列に結合します $sum
echo "
ソートされたスコア表は次のとおりです:
";
//表のヘッダー
echo "";
foreach($ sum as $value) // foreach ループを使用して配列 $ を走査しますsum
{
list($stu_number,$stu_name,$stu_score)=$value; //list() 関数を使用して、配列内の値を Variable
//テーブルの内容を出力します
echo "";
echo "
学生ID Name Achievements
$stu_number $stu_name $stu_score

"; //テーブルの末尾
reset($sum) //$sum 配列のポインタをリセットします
while(list($key) ,$value)=each($sum)) //while ループを使用して配列を走査します
{
list($stu_number,$stu_name,$stu_score)=$value; ="081101") //学生番号 081101 の値があるかどうかを問い合わせます
{
echo "
"; stu_number." は ".$stu_name."、";
echo " は ".$stu_score; // 見つかったらループを終了します。
}
}
?>


声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。