Correcting teacher:天蓬老师
Correction status:qualified
Teacher's comments:
答:
答:
php软件它是服务器的扩展,用来执行服务器传给他的扩展名.php 文件,并把处理完的结果返回给服务器,再有服务端返回给请求的客户端(一般是浏览器),整个过程是:客户端先向服务器发送一个.php的请求,服务器端接受到请求后,根据文件扩展名来调用相应的模块来处理,处理完成后把结果返回给web服务器,再由服务器返回给客服端显示。
答:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>php和html混编</title>
</head>
<body>
<?php
//echo 输出
echo "hello ,word,今天开始上php编程了,真高兴!!echo 没有返回值,可以一次输出多个";
echo "<h3>php文章资讯</h3>";
echo "<hr>";//每一<?php标记中的最后一句可以省略分号
?>
<?php
//print 输出
print "hello ,word,print 输出,有返回值";
echo "<hr>";
?>
//短标签 输出
<?="短标签 输出hello ,word,print 输出,有返回值"?>
<!-- printf() 函数输出格式化的字符串。直接输出的 -->
<?php
echo "<hr>";
$num=5;
$str="西安";
printf('printf:在%s有%d百多万人口,属于特大城市',$str,$num);
echo "<hr>";
?>
<!-- sprintf() 函数把格式化的字符串写入变量中。 返回变量-->
<?php
$rs=sprintf('sprintf:在%s有%u百多万人口,属于特大城市',$str,$num);
echo $rs;
echo "<hr>";
?>
<!-- vprintf() 函数输出格式化的字符串。 与 printf() 不同,vprintf() 中的参数位于数组中 -->
<?php
vprintf('vprintf:在%s有%d百多万人口,属于特大城市',[$str,$num]);
echo "<hr>";
?>
<!-- vsprintf() 函数把格式化的字符串写入变量中。 返回变量 与 sprintf() 不同,vsprintf() 中的参数位于数组中-->
<?php
$rs=vsprintf('vsprintf:在%s有%u百多万人口,属于特大城市',Array($str,$num));
echo $rs;
echo "<hr>";
?>
<!-- fprintf() 将格式化后的字符串写入到流。 $file = fopen("test.txt","w"); -->
<?php
$file = fopen("test.txt","w");
echo fprintf($file,'vprintf:在%s有%d百多万人口,属于特大城市',$str,$num);
?>
</body>
</html>
效果:
答:
<?php
// 基本数据类型:布尔型,字符串,数值形式(整数和浮点数)
// 布尔型:true false
//php向外输出的都是字符串形式的:
echo "在PHP中布尔值true的字符串:";
echo (string)true==='1'?'"1"':'数字1';
echo "<br>";
echo "在PHP中布尔值false的字符串:";
echo (string) false===''?'""':'0';
echo "<hr>";
echo "Bool的值的类型字符串形式:";
//var_export输出变量原本类型的字符串
var_export(true);
echo " ";
var_export(false);
echo "<hr>";
$b=true;
settype($b,'string');
echo gettype($b);
echo "<hr>";
class demo{
function __toString()
{
return "demo::自定义表示";
}
}
$obj=new demo;
echo "对象的原本字符串表示:";
$str=var_export($obj,true);
echo gettype($str).'=>'.$str;
echo "<hr>";
echo "对象的自定义字符串表示:";
echo $obj;
echo "<hr>";
echo "字符串:<br>";
echo "字符串的定界符两种:'' \"\"".'<br>';
$abc="hello word";
//单引号是直接输出的
echo '$abc';
echo "<br>";
//双号会解析完在输出:
echo "$abc\t{$abc}\ta\$abcdefg";
echo "<hr>";
echo "数值:";
echo "var_dump输出变量的值与类型";
var_dump(true,false);
echo "<br>";
var_dump('string');
echo"<br>";
//输出8进制,16进制,二进制
var_dump(07777,0xffff,0b1010);
echo"<br>";
//科学计数法:
var_dump(1.2356,1e3,1e-3);
echo "<hr>";
echo "复合数据类型:数组,对象<br>";
echo "数组:";
//简单数组
print_r([0,1,2,3,4,5,7]);
echo "<br>";
//关联数组:
$str=Array(
'id'=>10,
'username'=>'张三',
'profession'=>'工程师',
'jobtime'=>'10年以上'
);
print_r($str);
echo "<hr>";
//php数组的指针会自增
$ap=[];
$ap[]='';
$ap[]='';
$ap[]='hello';
print_r($ap);
echo "<hr>";
echo "函数";
//全局变量
$abc=1010;
function getdemo(){
//局部变量
$abc=123;
echo "局部变量".$abc;
}
getdemo();
echo "<br>";
//在函数内部使用全部变量
function getdemo1(){
//全局变量
global $abc;
echo "全局变量".$abc;
}
getdemo1();
echo "<hr>";
echo "php中的类:";
class touchclass{
var $name;
var $tel;
public function __construct($name,$tel){
$this->name=$name;
$this->tel=$tel;
}
//兼容旧版
public function touchclass($name,$tel){
$this->__construct($name,$tel);
}
function getouterfunc(){
// 调用外部函数
getdemo1();
}
public function __toString()
{
return "php类的演习:";
}
}
//php 类实例化
$obj=new touchclass('php飞飞','壹叁陆肆伍柒捌玖叁零');
echo $obj->name,'=>',$obj->tel;
echo "<br>";
echo "调用外部函数:";
$obj->getouterfunc();
效果: