作业效果图
作业源代码
<?php //声明编码语言 header("content-type:text/html;charset=utf-8"); $titel = "<h2 style='color:red;'>今日头条</h2>"; $time = "<span style='color:#bacac6'> 2018-04-11</span>"; $news1 = <<< HEREDOC <b>美团和滴滴在外卖领域大战正酣 二选一你会选谁?</b>{$time}\n<br>人民日报:共创和平安宁繁荣开放美丽的亚洲和世界{$time}; HEREDOC; $news2 = <<< HEREDOC <strong>外交部:中国扩大开放举措与中美贸易冲突无关</strong>{$time}\n<br>扎克伯格听证会为何能全身而退?美媒:议员是\"文盲\"?{$time} HEREDOC; $news3 = "阿尔及利亚一军机坠毁 死亡人数升至257人{$time}"; $newsName = <<< 'NOWDOC' php中文网*\\//*www.php.cn NOWDOC; echo $titel; echo nl2br("$news1"); echo '<hr>'; echo nl2br("$news2"); echo '<br>'; echo $news3; echo '<hr>'; echo "<p style='color:green'>$newsName</P>";
点击 "运行实例" 按钮查看在线实例
总结
基本语法:
1.标签:用<?php 标签开始 ?>标签结束,如果是纯PHP代码脚本,应该省略结束标签
2.语句:每条语句必须以分号;结束,最后一条语句可省略,但推荐也加上分号
3.注释:与javascrpt完全一致,多行用:\/*内容*\/,单行用: //或 #(linux风格)
4.功能: PHP(Hypertext Preprocessor),翻译过来就是:超文本预处理器
什么是超文本,其实就是:html文件,php语言本质上就是用来创建html文件的
1.php代码是在服务器端运行,这与javascript不同,javascript是在客户端(浏览器上运行)
2.php代码与其它页面元素一样,是通过标签的方式,嵌入到html文档中
3.php代码可以写在html文档的任意位置
4.如果html文档中有php代码,那么文件扩展名必须保存为php,否则不会执行
5.如果文档中只有php代码,请省略掉结束标签'?>',以防止与其它文件合并时产生问题
如何将生成的html代码发送到客户端显示
语句:echo,print
功能:将内容以字符串形式输出到浏览器
区别: echo 直接发送 print 发送成功后返回1
创建变量
1.任何编程语言都要用到变量
2.变量:是临时储存数据的容器,保存着当前脚本要用到的数据
3.变量的四大特点: 有名称,有使用域,有类型,有运算规则
4.变量的命名规则:
4-1:必须以$开头,学好php,美元大大的有
4-2:必须以字母或下划线开头,后面可以是字母数字与下划线的组合
4-3:区分大小写,这与javascript是一样的
5.变量种类:
5-1:用户自定义变量
5-2:系统预定义变量
6.变量的命名规则:变量通常使用驼峰命名法
7.变量的输出通常用:echo 变量名,可以一次性输出多个变量,用逗号分隔
注:echo是语法结构,不是函数,不能用在等号右边
输出字符串时,单引号与双引号的区别
输出不同的内容,需要使用不同的包装器,或者叫定界符,单引号和双引号,就是字符串类型的包装器,这与js是一样的
如果是纯字符串,推荐使用单引号,如果字符串有变量或者特殊字符的话
记忆: 单引号原样输出,双引号会将内容解析输出
那么:双引号会将哪些内容解析呢?二类: 1.变量, 2.特殊字符
双引号包装的字符串可以解析内部的变量名
会将$符后面尽可能多的字符解析为变量名
把:$后面的money收购了饿了么全部识别为变量了
$title2 = "阿里$money收购了饿了么!";
如果要在字符串输出定界符,怎么办?
使用转义字符:反斜线,将原字符进行转义,使其失去原有的作用
双引号也是一样的
第二种方案,使用与定界符不同类型的引号:双引号
特殊字符:
如果要输出转义字符:\自身,连写二个将自身转义就可以
类似的还有回车\r,换行符\n,制表符\t,美元符\$
单引号会原样输出,不会解析换行符
双引号会对特殊字符进行解析
在页面中只会看到一个空格,但是在源代码中的确是换行了
如果想在页面中看到换行效果,可以使用函数进行处理一下
nl2br($string)将字符串中的\n用<br>进行替换
关于双引号中的变量会被解析,刚刚说过了,如果不想让变量被解析,怎么做呢?
双引号中的变量会被解析出来
对$进行转义: \$,就是会原样输出了,不会再解析
除了用引号做为字符串定界符外,还有二种声明字符串的方法
heredoc和nowdoc
* heredoc结构
* 功能:与双引号创建的字符串基本一致
* 1.可以将内部的变量和特殊字符进行自动转义(不需要转义字符)
* 2.可以直接使用双引号,而不需要转义
echo '<hr>';
// $heredoc = <<< "HEREDOC"
$heredoc = <<< HEREDOC
{$siteName}致力于打造一站式免费学习平台,誓将"公益"进行到底!\n
这里是PHP爱好者共同的家园,我们热忱欢迎来自全国各地的PHP爱好者~~
HEREDOC;
echo $heredoc;
为什么没有看到\n的换行效果呢?是不是没有转义呢?事实上已经自动转义了
因为你已经看不到\n,它在页面中显示一个空格。如果想在页面中看到换行效果
可以使用函数 nl2br()
echo '<hr>';
echo nl2br($heredoc);
nowdoc
* php5.3+
* 功能:与单引号创建的字符串基本一致
* 1. 将内容原样输出,不解析变量和特殊字符
* 2. 可以直接使用单引号,不需要转义
$nowdoc = <<< 'NOWDOC'
<h3>$siteName</h3> \r\n 'www.php.cn'
NOWDOC;