作业:
一、代码入下:
<?php
echo '<h1>'.'php变量:数值,浮点数,字符串,数组,布尔值:'.'</h1>','<br>';
$num = 100;
$float = 3.1415726;
$str = '我是中国人';
$b= false;
$arr = [1,2,3,4,5,6,7,8,9];
echo $num,"<br>",$float,'<br>',$str,'<br>',$b,'<br>';
$a = print_r($arr,true);
echo '<pre>'.$a.'</pre>';
echo "<h5>echo无法输出数组${arr},只能输出类型</h5>";
echo '<hr>';
echo '<h2>输出关键字和函数的差异:print_r、printf、var_dump、var_export</h2>','<br>';
print_r($arr);
print_r('<br>');
print($str);
print $str;
echo '<hr>';
var_dump($arr);
var_export($arr);
var_export($b);
$c=printf("%d",$num);
echo '<hr>';
echo '数据类型的获取及转换','<br>';
echo gettype($c),"<br>";
settype($float,'string');
echo gettype($float);
echo '<hr>';
#定义常量
define('APP_NAME',"山城");// 变量值可以为表达式
echo APP_NAME,'<br>';
const xl=100;//变量值只能是字面量,类里面只能是const来声明常量
echo xl,'<br>';
echo '<hr>',"<h1>单双引号的差别</h1>";
$name='小王';
echo "${name}是\t${str}";
echo '${name}是\t${str}';
echo <<<etc
<br>"任命":院长级别${name}<br>
etc;
echo <<<tat
试试换行有没有效果 \r
就是想想试试<br>
tat;
echo <<<'se'
"任命":院长级别${name}<br>
看看换\r行不
se;
echo '<h1>数组创建和读取</h1>';
echo '<h2>序列数组的创建</h2>';
$arr = [2,4,6,8,10];
$arr1 = [0=>1,1=>3,2=>5,3=>7,4=>9];
$arr2[] = 1;
$arr2[] = 2;
$arr2[] = 3;
$arr2[] = 4;
$arr2[] = 5;
print_r($arr);
echo '<br>';
echo print_r($arr1,true),'<br>';
var_dump($arr2);
echo '<br>';
var_export($arr);
echo '<br>';
echo var_export($arr,true);
echo '<br>';
printf($arr);
echo '<br>';
echo printf($arr,true);
echo '<h2>序列数组的读取</h2>';
echo $arr[1],"\r",$arr[2],'<br>';
foreach ($arr as $item) {
echo $item;
}
echo '<br>';
echo gettype($arr[1]);
echo '<br>','list()数组赋值','</br>';
list($one,$two,$three,$four,$five) = $arr1 ;
echo $one,$two,$three,$four,$five,'<br>';
$f=implode(',',$arr);
echo $f,'<br>';
echo print_r(explode(',',$f),true);
echo '<h2>关联数组的创建</h2>';
$nums = ['one'=>1,'two'=>"two",'three'=>"中国人"];
$nums1['id']=100;
$nums1['name']='小王';
$nums1['city']='郑州';
echo '<pre>'.print_r($nums,true).'</pre>';
var_export('<pre>'.print_r($nums,true).'</pre>');
// 遍历关联数组
foreach ($nums as $value) {
echo $value,'<br>';
}
foreach ($nums1 as $key=>$value ) {
echo $key,'=>',$value,'<br>';
}
extract($nums);
echo "关联数组转变量:",'<br>',$one,$two,$three;
$id=100;
$name='李';
$city='郑州';
$cation='中国';
$aaaa=compact('id','name','city','cation'); #变量转数组
print_r($aaaa);
$n = array_values($aaaa); #关联数组转序列数组
print_r($n);
echo '<h1>流程控制之分支控制</h1>';
$a=5;
if ($a>3) {
echo '大于3';
}
echo '<br>';
$a=2;
if ($a>3) {
echo '大于3';
} else {
echo "小于3";
}
if (5<$a) {
echo '大于5';
} elseif ($a>10) {
echo "大于10";
} else {
echo '小于5';
}
switch (true) {
case $a>5: {
echo '大于5';
break;
}
case $a=5: {
echo "等于5";
break;
}
default: {
exit('不知道');
}
}
switch ($a) {
case $a>5: {
echo '大于5';
break;
}
case $a=5: {
echo "等于5";
break;
}
default: {
exit('不知道');
}
}
二、运行效果如下:
三作业总结:
1、变量类型:gettype();
、settype
获取变量类型、永久改变变量类型
2、变量类型转换:(int)$a
、(string)$b
等等(float、array、boolean、object)
3、数组转换:implode();
转换字符串,反之 explode();
字符串转换数组
4、数组遍历:foreach(){}
;
5、数组赋值变量:list(...)=$array;
6、关联数字与变量:extract();
将数组元素直接变换成变量
7、将变量组装成关联数组:compact()
;
8、将关联数组转换成序列数组:array_values();
9、将变量直接组装成序列数组:
function connect(...$linkParams)
{
// 返回的是索引数组
print_r($linkParams);
}