PHP基础

PHP语言是一门后端语言(Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言语法吸收了C语言JavaPerl的特点,利于学习,使用广泛,主要适用于Web开发领域,它要想正常运行是需要运行环境支持的。也就是说我们平时所说的本地开发环境。因为PHP是一门主要是用来做网站的语言,因此,我们在搭PHP开发环境的时候,避免不了就是要同时安装相关的web支持软件。主要有以下几种常用的:
(1)Apache、IIS、Nginx等web服务器
(2)PHP
(3)Mysql、SQLserver、Orcal等数据库
WINDOWS上常用的集成安装包很多,比如:Appserv,WAMP,phpstudy等,LINUX上有一款不错的就是LNMP集成包。官方网站有详细安装使用说明,网址为:http://www.lnmp.org
PHP开发软件:“工欲善其事,必须利其器!”;

关于WAMP无法启动Apache服务器的解决方案

1.如果是80端口被占用,那么修改httpd.conf文件

Listen 0.0.0.0:80
Listen [::0]:80
//修改为
Listen 0.0.0.0:8080
Listen [::0]:8080

修改完后重启wampserver,或者是查看wamp中Apache里面的service测试80端口,查看是什么程序占用了80端口服务,然后关闭相应的程序;
2.如果80端口没被占用,还是无法启动Apache,则:
运行 cmd
cd 到 WampServer 安装目录 如 wamp\bin\apache\Apache2.x.x\bin
运行 httpd.exe -e debug
会提示 Apache 因何不能启动

PHP基础语法

<?php echo 'hello word';?>

PHP代码可以放的位置,纯PHP文件,不要结束的?>标记;

如果文件内容是纯 PHP 代码,最好在文件末尾删除 PHP 结束标记。这可以避免在 PHP 结束标记之后万一意外加入了空格或者换行符,会导致 PHP 开始输出这些空白,而脚本中此时并无输出的意图。

指令分隔符,和JS一样就是一个英文的分号“;”
注释和JS基本一样,(js不能用#注释)(#单行,//单行,/*多行*/);

PHP数据类型

整型 --比如:1,2,0
浮点型 --1.2,1.0
字符串 --非数字都是字符串,字符串必须用双引号或单引号包起来。换句话说,数字被引号包起来,数字也就成了字数串。
布尔型 --真(true)或假(false)
对象 --Object
NULL --空 唯一个值就是NULL
NaN --Not a Number这不是一个数字
undefined --未定义
0,false,null,undefined,'',NaN,都代表假;

PHP单引号和双引号区别及用法

单引号中的变量不会被解释,双引号中的变量是被解释,编程过程中普通的字符串尽量用单引号,解析速度快;不像JS,引号中的任何字符都是字符串的一部分,PHP中双引号里面的变量还是变量,不是字符串的一部分。

<?php
$int = 1;
echo '输出$int';
echo "输出$int";

PHP变量

变量以 $ 符号开头,其后是变量的名称,变量名称必须以字母或下划线开头,变量名称不能以数字开头,变量名称只能包含字母数字字符和下划线(A-z、0-9 以及 _),变量名称对大小写敏感($y 与 $Y 是两个不同的变量),不同的英文单词之间建议使用下划线“_”进行分隔比如$my_apple,$this是PHP的保留字,不能用来定义成一个自定义的变量;
PHP中定义大段文本内容的语法:

<?php
header("Content-type:text/html;charset=utf-8");
$string = <<<GSY
 这里定义大段文本内容,我比定义普通字符串的容量还要大哦。
GSY;
echo $string; 

Global定义全局变量说明:global $a;global只能用在function内部;

<?php
$test = 123;
abc();
function abc() {
  echo $test;
}
$test = 123;
abc();
function abc() {
  global $test;
  echo $test;
}

PHP中的可变变量:就是把变量名动态的设置和调用:

<?php
header("Content-type:text/html;charset=utf-8");//防止页面出现乱码
$str_name = 'string';
$string = 'I Like PHP';
echo $$str_name ;

PHP变量的值引用:变量的引用,也叫变量的值传递;就是一个&符号的在变量中的运用,例如:

$a = 1;
$b = &$a;
echo $b;

PHP超全局变量

PHP 中的许多预定义变量都是“超全局的”,这意味着它们在一个脚本的全部作用域中都可用。在函数或方法中无需使用关键字 global $variable; 就可以访问它们。
这些超全局变量是:

  • $GLOBALS —— 引用全局作用域中可用的全局变量
  • $_SERVER —— 服务器和执行环境信息
  • $_REQUEST —— HTTP Request 变量
  • $_POST —— HTTP POST 变量
  • $_GET —— HTTP GET 变量
  • $_FILES —— HTTP 文件上传变量
  • $_ENV —— 环境变量
  • $_COOKIE —— 会话机制
  • $_SESSION —— 会话机制

错误抑制符

@可以抑制错误的报道,例如数据库连接、数据表的操作等,用的可能比较多。主要是放在一些可能会出现异常情况的函数前面。下面这个是文件删除出错被抑制。因此,虽然文件不存在,它也不会报错。如果去掉@符号,下面的程序就要报文件不存在类似的错误了。

@unlink('e:/www/qinsiwang/www/001.html');

PHP常量定义

PHP中通常用define()函数来定义常量,关键字const也可用来定义常量,但必须是在(class)类文件内部使用;

<?php
define('PI',3.1415926);//定义一个不变的圆周率
$r = 10;//假设圆半径为10
echo '半径为10个单位的圆面积是'.$r*PI;

包含语句

包含(也叫引入),主要是将其它文件引入到当前文件内部使用。如同复制粘贴的原理。
include , include_once
require , require_once
区别:
(1)include和require遇到包含不存在的文件的时候,报错级别不同。include报一个警告级别的错误,而require报一个致命级别错误。
(2)inlcude包含的文件不存在的时候,它后面的程序会继续往下运行,而require后面的程序不再运行。
(3)带_once的包含语句,在运行的时候会检查这一行的前面有没有包含,如果有,本次就不再包含,如果没有,就包含。
语法举例:

require '1.php';
echo 'hello';

PHP中的输出语句

echo 输出一个普通的变量
print_r($a)输出数组或对象,输出时不带类型
var_dump($a) 输出任何类型的数据,会带数据类型
var_export($a) 输出或返回一个变量的字符串表示,形式为符合原生PHP类型的语法形式
exit 程序结束命令
die('abc'); 输出并停止运行
顺便记一下PHP输出当前的PHP配制信息函数:
phpinfo();

PHP运算符

  • 算术运算符

+ - * /
%取模:表示取余数,/取的是商
例:
5 % 2 = 1;
5 / 2 = 2.5;
++ 累加 前加,后加
-- 累减 前减,后减
$i = 1;
echo $i++;

  • 赋值运算符

=(赋值) += -= /= *= %=

  • 比较运算符

== 两边的值进行比较
=== 全等,不仅比较值,还比较两个值的类型
!= 不等于
!== 全不等于
> < >= <=
举例说明:
$i = '1';

$r = 1;
if ($i == $r) {
echo '相等';
} else {
echo '不相等';
}

  • 逻辑运算符

&& --and
|| --or
!非

  • 三元运算符

$str = (5>1) ? '大于' : '小于';

流程控制语句

  • 条件语句
//单一条件分支结构
if (5>1) {
    echo '大于';
} else{
    echo '小于';
}
//多条件分支结构
$result = 50;
if ($result >= 90) {
    echo '优秀';
} elseif ($result >= 60 and $result <= 90) {
    echo '合格';
} else {
    echo '不及格';
}
  • for循环
for ($i=0;$i<=10;$i++) {
    echo ($i%2) == 0 ? $i.'是偶数'.'<br>' : $i.'是奇数'.'<br>';
}
  • switch循环
date_default_timezone_set('PRC');//Republic of China
$hour = date('H');
switch ($hour) {
    case '08':
        echo '早上好';
        break;
    case '12':
        echo '中午好';
        break;
    case 17:
        echo '下午好';
        break;
    default:
        echo '您好';
        break;
}
  • while循环
$r = 1;
while ($r<0) {
    echo $r.'<br>';
    $r++;
}
  • do while循环
$r = 1;
do {
    echo $r;
} while($r<0);
  • foreach循环
$arr = array('name'=>'张三','age'=>24,'sex'=>'男');
foreach ($arr as $key => $value) {
    echo '下标为:'.$key.'的值为:'.$value.'<br>';
}
//$key是可以省略的,$value不能省略,$key和$value只是一个变量名,不固定不变的名称
  • 补充说明

break;
在循环语句里,遇到break,程序就直接跳出循环体。不再运行循环体里面的程序。
continue;
在循环语句里,遇到continue,程序会回到循环语句的起始位置重新开始循环。continue之后的语句本次不再运行。
计算程序运行时间

PHP数组

数组是对大量数据进行组织和管理的有效手段之一,通过数组的强大功能,可以对大量性质相同的数据进行存储、排序、插入及删除等操作,从而可以有效的提高程序开发效率以及改善程序的编写方式。
数组有多种表现形式以及灵活性,数组的维数,主要看括号有几层。
在PHP中有两种数组:索引数组和关联数组。

PHP的超时控制

php脚本文件默认的运行超时时间是30秒,即运行超过30秒无返回结果,则php脚本会提示超时错误。但是有时候确实有超过30运行时间限制的需求,这里讲解几种方法来调整这个时间限制。
1、打开php.ini文件,找到 max_execution_time,将后面的数字改成你想要的时间,单位是秒。
这种方式修改后需要重启服务,一般不建议采用这种方法。
2、使用PHP的ini_set()函数设置,设置方法:
ini_set("max_execution_time",1800);
设置语句必须是php文件的第一行。
3、使用PHP的set_time_limit()函数设置,设置方法:
set_time_limit(1800);
设置语句必须是php文件的第一行。

任务

反复练习数组的创建,并运用所学循环语句进行循环输出;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,670评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,928评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,926评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,238评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,112评论 4 356
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,138评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,545评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,232评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,496评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,596评论 2 310
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,369评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,226评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,600评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,906评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,185评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,516评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,721评论 2 335

推荐阅读更多精彩内容

  • 一、php可以做什么 php是一种可以在服务器端运行的编程语言,可以运行在Web服务器端。 php是一门后台编程语...
    空谷悠阅读 3,070评论 4 97
  • 1.变量 变量名的命名规范需要“$”进行标识变量名必须以字母或下划线 “_”开头变量名只能由字母、数字、以及“_”...
    苏宇lovecc阅读 1,269评论 1 8
  • [if !supportLists]1.[endif]PHP基础(变量的八种类型、empty和isset、null...
    4e855d444c9f阅读 567评论 0 0
  • Alcatraz是一个能帮助我们管理Xcode插件,模板及颜色配置的工具。安装命令如下,安装成功后在Xcode的w...
    Elena_li阅读 170评论 0 0
  • 闺女少时春至,楹联无历书抄,万般与父念童谣,掀起芳龄生巧。 慈父暮年勤勉,千金燕语妖娆,说文解字乐滔滔,牵动秋风致稿。
    乔玉儿阅读 267评论 2 5