输出结果:
输出连接的字符:
<?php
$a='hello';
$b='world';
echo $a." " .$b;
?>
//在PHP中连接符是.
如果要输出一个含有单引号的字符串,这个时候可以借助转义字符:
<?php
echo 'hello \'world \'';
//注意这里全部都是单引号
//输出hello'world'
?>
另外在php中还有一些转义字符
PHP中的转义字符有:
" \n" 换行
"\r"回车
"\t"水平制表符
""反斜杠
“$” 美元符号
" 英文斜杠’ "单引号
" 英文斜杠" " 双引号
PHP中的输出语法还有:
echo | 可以输出一个或多个字符串 |
---|---|
只能输出简单类型变量的值,如int,string | |
print_r | 可以输出复杂类型变量的值,以更容易理解的形式展示。如数组,对象 |
printf | 函数用于格式化输出字符串,主要用于字符串中以%开头的格式字符串替换 |
sprintf | 函数也用做字符串格式化。该函数与 printf 函数基本相同, 但它可以将转换后的结果保存到一个字符串变量中,而不是直接输出 |
var_dump | 打印变量的相关信息,包括表达式的类型与值,通过缩进显示其结构 |
实现一下:
<?php
print "hello world";
//输出hello world
?>
<?php
$a=array('a' => 'apple', 'b' => 'banana', 'c' => array ('x','y','z'));
print\_r ($a);
输出结果:
$number = 1;
$str = "hello world!";
printf("今天是星期%u ,看见纸上写着 %s.",$number,$str);
输出结果:
<?php
$number = 1;
$str = "hello world!";
$txt = sprintf("今天是星期%u,看见纸上写着%s", $number, $str);
echo $txt;
?>
输出结果:
<?php
$a = array(1, 2, array("a", "b", "c"));
var\_dump($a);
?>
输出结果:
提示:echo输出的速度比print快,echo是PHP语句,没有返回值,print和print_r是PHP函数,函数有返回值。
print返回值为1(int类型),print_r返回值为true(bool类型)。
3.数据类型
有关数据类型我们可以用 var_dump来表示出来:
$a=5;
var\_dump($a);
echo "<br>";
$b="hello world";
var\_dump($b);
echo "<br>";
$c=3.14;
var\_dump($c);
echo "<br>";
$d=true;
var\_dump($d);
输出结果:
或者是使用php的检查数据类型的函数来进行数据类型的判断:
可以实现一下:
$a=5;
$b="hello world!";
$c=3.14;
$d=314;
if(is\_int($a)){
echo "$a"."是int型数据"."<br>";
}else{
echo "$a"."的数据类型是:".is\_int($a);
}
if(is\_string($b)){
echo "$b"."是string型数据"."<br>";
}else{
echo "$b"."的数据类型是:" .is\_string($b);
}
if(is\_float($c)){
echo "$c"."是float型数据" ."<br>";
}else{
echo "$c"."的数据类型是".is\_float($c);
}
if(is\_float($d)){
echo "$d"."是float型数据" ."<br>";
}else{
echo "$d"."的数据类型是:";
var\_dump($d);
}
来看一下结果:
4.值传递和引用传递
php默认的一般情况下,都使用的是值传递
值传递
指将一个变量的数据值(数据内容)复制一份,然后赋值给另一个变量,就是变量之间进行普通赋值。
$a=1;
$b=$a;
$b++;
//b的值是2,a的值是1
echo "a的值是$a"."<br>"."b的值是$b";
引用传递
PHP中引用传递就是在变量前面加上 & ,引用传递中改动新的变量将影响到原始变量。
$a=1;
$b=2;
echo "传递前a的值是:".$a."<br>";
echo "传递前b的值是:".$b."<br>";
$b=&$a;
echo "传递后a的值是:" . $a."<br>";
echo "传递后b的值是:" . $b."<br>";
$a=1;
$b=&$a;
$b=2;
echo "a的值是$a"."<br>"."b的值是$b";
表单传值
在PHP中进行表单传值的方式有两种,post和get;先举几个例子看看两者的区别~
1.post
第一个页面用于展现给用户,收集用户的信息:
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<form action="postdo.php" method="post">
用户名:<input type="text" name="id">
密码:<input type="password" name="pas1">
邮箱:<input type="email" name="emai1">
<input type="submit" value="提交">
</form>
</body>
</html>
收集完成后,显示给后台:
<?php
//用于接收从post页面传递过来的用户信息,并显示出来
$name=$\_POST['id'];
$pass=$\_POST['pas1'];
$email=$\_POST['emai1'];
echo $name;
echo "<br>";
echo $pass;
echo "<br>";
echo $email;
?>
2.get
<form action="getdo1.php" method="get">
用户名:<input type="text" name="id">
密码:<input type="password" name="pas1">
邮箱:<input type="email" name="emai1">
<input type="submit" value="提交">
</form>
<?php
$name=$\_get['id'];
$pass=$\_get['pass'];
$emai=$\_get['email'];
echo $name . "<br>";
echo $pass ."<br>";
echo $email ."<br>";
?>
另外利用get进行超链接传输:
<a href="getdo.php? id=1">第一篇文章</a>
<a href="getdo.php? id=2">第二篇文章</a>
<a href="getdo.php? id=3">第三篇文章</a>
<?php
$id=$\_GET['id'];
echo "您单击了第".$id."篇文章";
?>
简单总结
从安全性上来讲,get提交的数据在url栏可以看见,而post提交的数据是不可见的,因此post更安全。
从提交原理上讲, get提交是参数一个一个的提交,post提交是所有参数作为一个整体一起提交。
从提交数据的大小上来讲, get提交一般不超过255个字节,post提交的大小取决于服务器。
从灵活性上讲,get很灵活,只要有页面的跳转就可以传递参数,post不灵活,post提交需要有表单的参与。
有关问题的解决
在进行表单传值时,发现了有关单选和复选出现的问题:
查找资料后发现原因是:
因为单选框名字都一致,而我们需要获取相应选项的value值,这时需要手动在HTML页面中添加value,用value值的不同来判断所选的选项:
//将单选框的value值继续修改
<input type="radio" name="sex" value="女">女
<input type="radio" name="sex" value="男">男
运行:
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
type=“radio” name=“sex” value=“女”>女
男
运行:
[外链图片转存中...(img-xaLpr4g8-1714158989301)]
[外链图片转存中...(img-gpf4DZXx-1714158989302)]
[外链图片转存中...(img-MfZl1tZ2-1714158989302)]
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!**
**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**
**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618545628)**