PHP 프로그래밍 기초 실험 2: PHP 기본 구문 프로그래밍 (4)

실험 2-4 PHP 기본 구문 프로그래밍 (4)

1. 실험시간

2시간

2. 실험 목적

1. PHP의 기본 구문에 더 익숙해집니다.

2. PHP에서 문자열 데이터의 정의와 일반적인 처리 방법을 마스터합니다.

3. PHP에서 배열 데이터의 정의와 일반적인 처리 방법을 마스터합니다.

4. PHP에서 미리 정의된 배열과 이를 사용하는 방법을 마스터하세요.

3. 실험장비

    Win10 운영 체제, Word2019, PHPStudy+eclipse for php가 설치된 PC 컴퓨터

4. 실험 내용 및 절차

( 1 ) 실험 단계

① 새 프로젝트 파일—새—로컬 PHP 프로젝트를 만들고 이름을 PHP2_4로 지정합니다.

②새 php 파일 2개를 생성하고, 프로젝트명 우클릭 - new - PHP File

③코드를 입력하고 저장하세요

④브라우저에서 코드의 정확성을 확인하고 실행 결과를 출력합니다.

(2) 실험 내용

1)

4개의 입력을 생성하는 반복, 학생 번호 입력,

제출 버튼을 클릭한 후 모든 학번을 출력하고, 1811로 시작하는 학번을 찾아 1810으로 대체하여 출력합니다.형식은 그림과 같습니다.

 

소스 코드: 2_4_1.php

<?php
	echo "请输入学号:</br>";
	echo "<form method=post>";
	for ($i = 1 ; $i < 5 ; $i ++){
		if ($i >= 2) echo "-";
		echo "<input type='text' name='id[]' size='6'>";
	}
	echo "<input type='submit' name='sub' value='提交'>";
	echo "</form>";
	if (isset($_POST['sub'])){
		$k = 0;
		$jsj = array();
		$stu = $_POST['id'];//将文本框的值赋给数组$xuehao不用在变量后面加[]
		for ($i = 0 ; $i < count($stu) ; $i++){
			for ($j = $i + 1 ; $j < count($stu) ; $j++){
				if (strcmp($stu[$i], $stu[$j]) == 0)
					array_splice($stu, $i,1);//将数组中重复的值删除
			}
		}
		$str = implode(",", $stu);//使用逗号作为连接符将数组转化为字符串
		echo "所有的学生学号如下:</br>";
		echo $str."</br>";
		foreach ($stu as $value){
			if (strstr($value, "1811")){
				$string = str_replace("1811", "1810", $value);
				$jsj[$k] = $string;
				$k++;
			}
		}
		echo "计算机专业的学号如下:</br>";
		echo implode(",", $jsj);
	}
?>

결과 스크린샷:

제출을 클릭하기 전에:

 제출을 클릭한 후:

2) 아래 그림과 같은 인터페이스를 생성하고, 민원정보를 커스터마이징할 수 있으며, 제출버튼을 클릭하면 선택 및 입력된 민원정보가 출력됩니다.

소스 코드: 2_4_2.php

<!DOCTYPE HTML>
<html>
<head>
	<meta charset="UTF-8">
	<title>投诉页面</title>
	<style type="text/css">
		#tijiao {
			background-color: rgb(0, 150, 138);
			color: white;
			width: 50px;
			height: 30px;
			border-color: rgb(0, 150, 138);
			border-style: dashed;
		}
		#chongzhi {
			width: 50px;
			height: 30px;
		}
	</style>
	
</head>
<body>
	<form name="form" method="POST" action="">
		<table>
			<tr>
				<td valign="top" align="right">投诉类型</td>
				<td><input id="check" type="checkbox" name="like[0]" value="态度不好">态度不好 <br>
					<input id="check" type="checkbox" name="like[1]" value="业务不熟">业务不熟 <br>
					<input id="check" type="checkbox" name="like[2]" value="没人接电话">没人接电话
				</td>
			</tr>
			<tr>
				<td valign="top" align="right">详情</td>
				<td><textarea rows="5" cols="30" name="desc"></textarea></td>
			</tr>
			<tr>
				<td></td>
				<td><input id="tijiao" type="submit" value="提交" name="ok">
					&nbsp;
					<input id="chongzhi" type="reset" value="重置">
				</td>
			</tr>
		</table>
	</form>
</body>
</html>
<?php
$like=array(
		array('态度不好'),
		array('业务不熟'),
		array('没人接电话')
);
	if (isset($_POST['ok'])){	
		$like = $_POST['like'];
		$desc = $_POST['desc'];	
		foreach($like as $k=>$v){
			echo $k.'->'.$v.'</br>';
		}
// 		while(list($key,$value)=@each($like)){//用while循环也是可以的
// 			echo $key.'->'.$value.'</br>';
// 		}
		echo $desc;
	}
?>

결과 스크린샷:

제출을 클릭한 후:

아무것도 확인하지 않은 경우, 즉 전달된 배열이 비어 있는 경우 오류가 보고됩니다.

foreach 루프에 전제 조건을 추가해야 합니다.

if(is_array($like) && !emptyempty($like)){
			foreach($like as $k=>$v){
				echo $k.'->'.$v.'</br>';
			}
			// 		while(list($key,$value)=@each($like)){//用while循环也是可以的
			// 			echo $key.'->'.$value.'</br>';
			// 		}
		}

세 번째 질문은 어제 끝내지 못했는데 오늘 업데이트하겠습니다.


3) 알려진 배열 데이터는 다음과 같습니다.

$책=배열(

           array("name"=>"나의 2020","price"=>20.0,"author"=>"wang"),

           array("name"=>"PHP 프로그래밍","price"=>48.0,"author"=>"zhang"),

           array("name"=>"C++ 객체 지향 프로그래밍","price"=>30.0,"author"=>"li"),

           array("name"=>"파이썬 프로그래밍","price"=>40.0,"author"=>"zhou"),

           array("name"=>"간략한 시간의 역사","price"=>25.0,"author"=>"sun"),

       );

그래프와 같은 인터페이스를 구현하기 위해서는 코딩이 필요하며, 데이터는 테이블 형식으로 출력되는데, 테이블 형식에는 제한이 없으며 배열 내용도 출력 가능하다.

소스 코드: 2_4_4.php

<?php 
$books=array(
	       array("name"=>"我的2020","price"=>20.0,"author"=>"wang"),
	       array("name"=>"PHP程序设计","price"=>48.0,"author"=>"zhang"),
	       array("name"=>"C++面向对象程序设计","price"=>30.0,"author"=>"li"),
	       array("name"=>"python程序设计","price"=>40.0,"author"=>"zhou"),
	       array("name"=>"时间简史","price"=>25.0,"author"=>"sun"),
	   );
//创建表格将数组循环输入
	echo '<table border="1" width="600" align="center">';
	echo '<tr>';
	echo '<td>序号</td><td>书名</td><td>价格</td><td>作者</td>';
	echo '</tr>';
	foreach ($books as $k=>$v){
		echo '<tr>';
		echo "<td>".($k + 1)."</td>";
		echo "<td>".$v['name']."</td>";
		echo "<td>".$v['price']."</td>";
		echo "<td>".$v['author']."</td>";
		echo '</tr>';
	}
	echo '</table>';
?>

 결과 스크린샷:

테이블이 좀 못생겼다는 건 페이지 렌더링 문제라서 여기서는 쓰지 않겠습니다. 개선되면 업데이트하도록 하겠습니다!

그런데 마지막으로 html 코드와 php 코드를 함께 넣을 때 어떤 형식으로 코드 조각을 삽입하는지 묻고 싶습니다.

추천

출처blog.csdn.net/pzcxl/article/details/127062993