php笔记
php知识点
php知识点一、PHP基础知识PHP是一种脚本语言,常用于Web开发,但也可以用于命令行界面(CLI)脚本编写。
PHP是一种开源的、免费的、跨平台的语言,可以在各种操作系统上运行,包括Windows、Linux、Unix等。
PHP的语法类似于C语言,但更加简单易懂,因此学习起来相对较容易。
1. 数据类型PHP支持多种数据类型,包括整型、浮点型、布尔型、字符串型、数组、对象等。
其中,整型和浮点型可以进行算术运算,布尔型只有true和false两个值,字符串型可以使用单引号或双引号来表示,数组是一种用于存储多个值的数据结构,对象是一种面向对象编程的概念。
2. 变量变量是存储值的容器,可以存储各种数据类型的值。
在PHP中,变量必须以$符号开头,后面跟着变量名。
变量名可以包含字母、数字和下划线,但不能以数字开头。
变量的值可以通过赋值语句进行修改。
3. 运算符PHP支持多种运算符,包括算术运算符、比较运算符、逻辑运算符等。
算术运算符用于数学计算,比较运算符用于比较两个值的大小关系,逻辑运算符用于组合多个条件,形成复杂的逻辑表达式。
4. 控制流程语句PHP支持多种控制流程语句,包括if语句、switch语句、while语句、for语句等。
这些语句可以根据不同的条件执行不同的代码块,实现程序的控制流程。
二、PHP高级知识PHP不仅仅是一种简单易学的语言,还有很多高级的特性和技术,可以用于构建复杂的Web应用程序。
以下是一些PHP高级知识点:1. 面向对象编程PHP支持面向对象编程,可以使用类和对象来组织代码。
面向对象编程具有很多优点,包括代码复用、封装性、可维护性等。
2. 异常处理PHP提供了异常处理机制,可以在程序发生异常时进行捕获和处理。
异常处理可以避免程序崩溃,提高代码的健壮性。
3. 文件操作PHP可以读写文件,操作文件系统。
通过文件操作,可以实现数据的持久化存储和读取。
4. 数据库操作PHP可以连接和操作各种数据库,包括MySQL、Oracle、SQL Server等。
PHP复习知识点
PHP复习知识点第一章:初识PHP第一节:计算思维回顾1.计算思维:计算思维是运用计算机科学的基础概念进行问题求解、系统设计、以及人类行为理解等涵盖计算机科学之广度的一系列思维活动。
计算思维最根本的内容,即其本质(Essence)是抽象(Abstraction)和自动化(Automation)。
可以概括为:合理抽象、高校算法,主要过程包括:问题简单化(即合理抽象),然后构建解决问题的模型(即高效计算),最后,通过编程的手段输入到计算机内,通过计算机来完成一系列复杂的运算过程(即自动化)。
2.计算思维日常生活例子:考虑下面日常生活中的事例:当你女儿早晨去学校时,她把当天需要的东西放进背包,这就是预置和缓存;当你儿子弄丢他的手套时,你建议他沿走过的路寻找,这就是回推;在什么时候停止租用滑雪板而为自己买一付呢?这就是在线算法;在超市付帐时,你应当去排哪个队呢?这就是多服务器系统的性能模型;为什么停电时你的电话仍然可用?这就是失败的无关性和设计的冗余性;完全自动的大众图灵测试如何区分计算机和人类,即CAPTCHA[注1]程序是怎样鉴别人类的?这就是充分利用求解人工智能难题之艰难来挫败计算代理程序。
第二节:了解PHP1.PHP的概念:PHP 是一种HTML 内嵌式的语言,是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,被广泛地运用。
2.PHP的应用:1)PHP的脚本:1)服务器;2)命令器;3)桌面应用程序。
2)PHP的功能:能够生成动态页面内容能够创建、打开、读取、写入、删除以及关闭服务器上的文件能够接收表单数据能够发送并取回cookies能够添加、删除、修改数据库中的数据能够限制用户访问网站中的某些页面能够对数据进行加密3.PHP的特性(优势):1)、开放的源代码;2)、PHP是免费码;3)、php的快捷性;4)、跨平台性强;5)、效率高;6)、图像处理;7)、面向对象;8)、专业专注。
php最基本知识总结
{
code to be executed;
}
注释:for 语句有三个参数。第一个参数初始化变量,第二个参数保存条件,第三个参数包含执行循环所需的增量。如果 initialization 或 increment 参数中包括了多个变量,需要用逗号进行分隔。而条件必须计算为 true 或者 false。
(
"Cleveland",
"Loretta",
"Junior"
)
);
让我们试着显示上面的数组中的一个单一的值:
echo "Is " . $families['Griffin'][2] . " a part of the Griffin family?";
以上代码的输出:
在条件成立时执行一块代码,条件不成立时执行另一块代码
elseif 语句
与 if...else 配合使用,在若干条件之一成立时执行一个代码块
<html>
<body>
<?php
$d=date("D");
if ($d=="Fri")
echo "Have a nice weekend!";
1.PHP 的脚本块以 <?php 开始,以 ?> 结束。您可以把 PHP 的脚本块放置在文档中的任何位置。
2.PHP 中的每个代码行都必须以分号结束。分号是一种分隔符,用于把指令集区分开来。
3.在 PHP 中,我们使用 // 来编写单行注释,或者使用 /* 和 */ 来编写大的注释块。
PHP学习黑马视频28天PHP零基础入门到精通教程(P1基础6天)笔记1
PHP学习⿊马视频28天PHP零基础⼊门到精通教程(P1基础6天)笔记1笔记相关信息:标题28天PHP零基础⼊门到精通教程(P1基础6天)视频地址章节P1-P4标签PHP简介动静态⽹站访问流程其他F:\HTML_前端\PHP\B站⿊马BV18x411H7qD\Day01 搭建环境.docxPHP简介什么是PHPPHP定义:⼀种服务器端的 HTML 脚本/编程语⾔,是⼀种简单的、⾯向对象的、解释型的、健壮的、安全的、性能⾮常之⾼的、独⽴于架构的、可移植的、动态的脚本语⾔。
是⼀种⼴泛⽤于 Open Source(开放源代码)的尤其适合 Web 开发并可以嵌⼊ HTML 的多⽤途脚本语⾔。
它的语法接近 C,Java 和 Perl,⽽且容易学习。
该语⾔让 Web 开发⼈员快速的书写动态⽣成的⽹页。
PHP前⾝:Personal HomePage,个⼈主页,使⽤Perl语⾔开发的⼀种写个⼈主页的语⾔PHP:PHP Hypertext Preprosessor,php超⽂本预处理器,底层使⽤C语⾔⽹站Website的中⽂名称是⽹站,是指在互联⽹上,根据⼀定的规则,使⽤HTML、PHP等代码语⾔制作的⽤于展⽰特定内容的相关⽹页的集合,有可供管理⼈员操作的后台及⽤户使⽤的前台。
简单地说,Website是⼀种通讯⼯具,就像布告栏⼀样,⼈们可以通过Website 来发布⾃⼰想要公开的资讯,或者利⽤Website来提供相关的⽹络服务。
⼈们可以通过⽹页浏览器来访问Website,获取⾃⼰需要的资讯或者享受⽹络服务。
静态⽹站特点1.⽹页内容⼀经发布到⽹站服务器上,⽆论是否有⽤户访问,每个静态⽹页的内容都是保存在⽹站服务器上的,也就是说,静态⽹页是实实在在保存在服务器上的⽂件,每个⽹页都是⼀个独⽴的⽂件;2.静态⽹页的内容相对稳定,因此容易被搜索引擎检索;3.静态⽹页没有数据库的⽀持,在⽹站制作和维护⽅⾯⼯作量较⼤,因此当⽹站信息量很⼤时完全依靠静态⽹页制作⽅式⽐较困难;4.静态⽹页的交互性较差,在功能⽅⾯有较⼤的限制。
ET工作室 PHP100学习笔记-002.PHP基本语法,数据类型.discuz论坛搭建
1、PHP基本语法和数据类型:(1)、PHP基本语法:1、html 和php 混编把html语句写在<?php . . . ?>的外面就行了例如:2、一个语句以; (分号结束)这一点和C语言是类似的,要用英文的半角分号3、如何定义一个变量,和变量的使用例如定义一个变量a,然后输出,代码如下:定义变量用美元符号$开头,变量名只能由下划线和英文字母组成,英文字幕区分大小写。
(2)、PHP数据运算类型四种标量类型:boolean(布尔型)理解为真假型integer(整型)float(浮点型,也作“double”)理解为小数型string(字符串)两种复合类型:array(数组)object(对象)详解:(其实和C语言很像的)boolean(布尔型)理解为真假型$bo=TRUE; $bo=FALSE;integer(整型)$bo=1; $bo=-12;float(浮点型,也作“double”)理解为小数型$bo=1.001; $bo=3.1415926;string(字符串)$bo=“这段字符串or EN Word”;array(数组)$bo=array(1,2,3,4); $bo=array(“A”=>1 , “B”=>2);2、学习一个PHP源码调试(以discuz论坛为例)1.下载Discuz_6.0.0_SC_UTF8,解压产生Discuz_6.0.0_SC_UTF8文件夹。
2.将Discuz_6.0.0_SC_UTF8文件夹下的upload文件夹改名为bbs。
3.将Discuz_6.0.0_SC_UTF8文件夹复制到E:\wamp\www下。
4.打开浏览器,输入地址http://127.0.0.1/Discuz_6.0.0_SC_UTF8/bbs/install.php 我同意下一步改为root密码先不要设。
根据自己的情况改这个不改根据自己情况改密码设完要记好,别忘了下一步然后就好了。
php基本知识总结
16.指令分隔符:分号
结构语句,比如if语句、while语句、函数、类等 后面一定不要就分号
17.以单引号为定界符的php字符串,不可以解析变量,只支持两个转义 \'(单引号)和\\(反斜杠)
以双引号为定界符的php字符串,可以解析变量,还支持多个转义:\n(换行)、\r(回车)、\t(水平制表符) 、\\(反斜杠)、\$(美元符号)、\"(双引号)、\[0-7]{1,3}(正则)、"\":作用于转义字符
当php遇到与串的开头相对应的引号时,便认为已经到了字符串的尾部
如:"why doesn't "this" work?" 会被php语法分析器分成三部分,this是多余的字符,分析器 无法处理
上面的例子企图在双引号中包含双引号,而分析器在遇到第二个双引号时便认为字符串结束了, 要达到包含引号的目的,必须分析器在遇到串内普通引号的时候忽略它的原意,我们在引号的
$$a 等价于 $.$a 即 $name 也等价于 {$a}
数组中使用可变变量:$$var[1]
${$var}[1]:以这个做为变量名
${$var[1]}:以第一个元素做为变量名
变量范围:即作用域,是指在一个脚本中某个变量在哪些地方可以生效
局部变量:用于函数内部的变量将被限制在局部函数范围内
12.收集表单数据:
利用$_GET或者$_POST来提交数据给服务器
13.字符串处理:
40%的编程时间都是在处理字符串,php中有丰富的字符串处理函数
14.会话跟踪控制:
http协议是无状态协议,php可以通过cookie或session来控制会话跟踪
php笔记
1 php代码从右至左读取2(1)localhost:8080指向www文件夹(2)localhost:8080/phpinfo.php为php的系统环境变量,所有的参数都储存在这里3(1)//单行注释(2)/**/多行注释4 (1)echo 功能:在浏览器输出字符串;返回值void(2)print 功能:在浏览器输出字符串;返回值int(3)printf() 功能:在浏览器输出字符串返回值:字符串长度(4)sprintf功能:将字符串保存在内存中,使用echo在浏览器输出返回值:字符串5 在中英文切换过程中注意标点是在英文输入法下输入6 选中代码行ctrl+/(键)注释7 常量一旦被定义后就不能更改,常量要大写8 echo如果打印字符串需要加””,打印常量、变量不加。
9 php预定了很多常量,输入代码phpinfo()查看,echo打印需要加$;10 学习期间使用GBK编码,做项目采用UTF8,要改过来。
11 post 和get传输区别:post只传输不在网站处显示;get传输的同时显示在网址。
12 双引号里面可以放变量、转义字符进行解析出来13 (1) break退出循环,这个循环不再循环(2) exit退出整个程序(3) continue 退出当前本次循环继续下次循环14 写代码时注意for if等函数的{}和()与其他函数混在一起别搞错15相同名词key=键=下标=键=偏移量16当做字符串比较大小,从第一位开始比较17 for(…;…;) 分号;连接18 函数不区分大小写:Name()和nam()是同一个函数,变量区分大小写:$Name 和$name是不同变量。
19 include与require区别:include文件若不存在,出现两个警告,下面的程序可以继续运行;require文件若不存在,直接报错,接下来的程序也不能运行,推荐使用require.; incluce在用到时加载 ,require在一开始就加载20 header()作用:(1)重定向URL()21超全局变量:超全局变量是在全部作用域中始终可用的内置变量,注意:超级全局变量函数使用中括号[]而不是()22 isset()与empty()区别:isset检查变量是否存在,变量可以为空;empty()检查变量是否为空23 session存放于服务器端,一般存放1440秒,关闭浏览器即销毁,及时性(和cookie区别);cookie应用于会员登录,购物车,不存储在服务器,存在安全性隐患;session用于后台登陆,安全性高,一段时间不操作会过期24 zend studio查找代码ctrl+f25 /和\是有区别的26 文件格式jpg和jpeg的使用:牵涉到图片真实路径时jpg其余jpeg27 有数字规律的for循环没有的while循环28 类名第一个字母大写29 __construct()构造函数是类中的一个特殊函数,当使用new操作符创建一个类的实例时,构造函数将会自动调用(__construct两个下划线)30 php的public、protected、private三种访问控制模式的区别:public: 公有类型在子类中可以通过self::var调用public方法或属性,parent::method调用类方法在实例中可以能过$obj->var 来调用public类型的方法或属性.protected: 受保护类型在子类中可以通过self::var调用protected方法或属性,parent::method调用父类方法;在实例中不能通过$obj->var 来调用 protected类型的方法或属性private: 私有类型该类型的属性或方法只能在该类中使用,在该类的实例、子类中、子类的实例中都不能调用私有类型的属性和方法31 self 和parent 的区别a).在子类中常用到这两个对像。
php教程,php总结笔记教程
php教程,php总结笔记教程一、PHP概述十四、 PHP基础十五、面向对象思想十六、面向对象的PHP(十七、字符串和正则表达式十八、 PHP专题相关十九、 PHP常用API分类汇总二十、 MVC框架及模板二十一、 PHP网站部署及安全二十二、 PHP网站常见模块(非框架版)二十三、 PHP网站常见模块(TP框架版)二十四、用PHP+Mysql构造网站系统案例(详细设计文档)以下内容由整理)一、PHP概述PHP(“PHP: Hypertext Preprocessor”,超文本预处理器的字母缩写)是一种被广泛应用的开放源代码的多用途脚本语言,它可嵌入到。
和客户端的 JavaScript 不同的是,PHP 代码是运行HTML中,尤其适合web 开发在服务端的。
使用 PHP 的一大好处是它对于初学者来说极其简单,同时也给专业的程序员提供了各种高级的特性。
PHP 主要是用于服务端的脚本程序,因此可以用 PHP 来完成任何其它的 CGI 程序能够完成的工作,例如收集表单数据,生成动态网页,或者发送,接收 Cookies。
但 PHP 的功能远不局限于此。
PHP 脚本主要用于以下三个领域:, 服务端脚本。
这是 PHP 最传统,也是最主要的目标领域。
开展这项工作需要具备以下三点:PHP 解析器(CGI 或者服务器模块)、web 服务器和web 浏览器。
需要在运行 web 服务器时,安装并配置 PHP,然后,可以用 web 浏览器来访问 PHP 程序的输出,即浏览服务端的 PHP 页面。
如果只是实验 PHP 编程,所有的这些都可以运行在自己家里的电脑中。
请安装一章以获取更多信息。
查阅, 命令行脚本。
可以编写一段 PHP 脚本,并且不需要任何服务器或者浏览器来运行它。
通过这种方式,仅仅只需要 PHP 解析器来执行。
这种用法对于依赖 cron(Unix 或者 Linux 环境)或者 Task Scheduler(Windows环境)的日常运行的脚本来说是理想的选择。
php开发重要知识点总结
php开发重要知识点总结一、PHP基础语法1. PHP代码嵌入HTMLPHP代码可以通过简单的标签嵌入到HTML中,例如:```php<!DOCTYPE html><html><body><?phpecho "Hello, World!";></body></html>```2. PHP注释PHP注释可以使用两种形式:单行注释和多行注释。
单行注释使用"//",多行注释使用"/* */"。
```php// 这是单行注释/* 这是多行注释 */```3. PHP变量在PHP中,变量使用一个美元符号($)后跟变量名来表示,例如:```php$name = "John";$age = 30;```二、PHP数据类型1. PHP字符串在PHP中,字符串可以使用单引号或双引号表示。
另外,PHP还支持字符串连接操作和字符串长度获取等操作。
```php$str1 = 'Hello';$str2 = "World";$str3 = $str1 . ' ' . $str2; // 字符串连接$len = strlen($str3); // 字符串长度获取```2. PHP整数和浮点数PHP中的整数和浮点数可以直接赋值给变量,没有特定的数据类型声明。
```php$int = 10;$float = 3.14;```3. PHP数组PHP数组可以通过array()函数创建,也可以直接使用方括号来创建。
```php$arr1 = array(1, 2, 3);$arr2 = [4, 5, 6];```4. PHP布尔值PHP中的布尔值只有两个取值,分别是TRUE和FALSE。
```php$bool = TRUE;```三、PHP控制结构1. PHP条件语句PHP中的条件语句包括if语句、else语句、elseif语句和switch语句。
韩顺平php笔记--apache服务器的安装详解要点
1、web开发介绍web开发的介绍a、静态web开发(html页面)如果我们的一个页面,始终是一成不变的,则属于静态web开发,一般讲用html技术就可以了b、动态web开发(页面具有交互性)发帖、网上支付、发短信、发邮件。
常用的动态web技术php、jsp、asp、、cgi(通用网关接口)cgiasp-->jsp sun公司,被oracle2009收购【java solaris mysql】php 目前zend公司管理维护优点:1、跨平台,同时支持多种数据库2、效率高,安全性3、免费使用lamp4、开发的源代码5、上手快6、面向对象php4 php5缺点:安装复杂。
配置繁琐太灵活,解释执行(编译执行),有些错误到运行时,才会报错IDE(集成开发环境)zend studioeasyecpilsephp coderdwphpedit在软件开发中有一个非常重要的原则***编译环境和运行环境一致***bs 和cs 的比较bs与cs的介绍web服务器iis 7lighthtpapache运行apache,设置在cmd命令行里可直接开启apacer服务端口的介绍与说明apacer的目录结构Apache的管理模块apacer的目录结构万网买空间域名后上传文件到空间上,用户访问的流程apache服务器安装提示如果有一份apache建议卸载关闭apache服务,在管理面板1、准备软件2、安装3、网络域名:server服务名:localhost管理员的电子邮箱:test@推荐使用80端口4、典型安装自定义安装(选择)5、c://myencv/apache(安装路径)6、成功7、测试,在浏览器中输入http://localhost,显示itworksokapache安装好后,操作系统是一服务的方式管理httpd.exe我们可以通过该服务来启动和关闭,apcche也可以通过Apache master 来管理通过命令行管理测试:1、进入到控制台Apache其实就是软件,apache有一个非常重要的应用程序,httpd.exe 文件,该程序在Apache安装目录的bin目录下cmd进入apache的bin目录httpd -k start 开启(开启后,浏览器就找不到了)httpd -k restart 重启如果你希望在任何目录下,都可以运行我们的httd指令,则需要做一个环境变量设置打开我的电脑-》属性,高级,环境变量,PATH点编辑,在变量值,我们加入apache的bin目录即可把apache的bin目录的路径粘贴进path变量的框内apache这个web服务默认在80端口监听。
PHP编程入门的基本语法知识点总结
PHP编程入门的基本语法知识点总结PHP编程入门的基本语法知识点总结想要学好PHP,怎么能够不了解基本的语法知识呢?下面是店铺为大家搜集整理出来的有关于PHP编程入门的基本语法知识点总结,一起来学习一下吧!一、何为phpPHP,即“PHP: Hypertext Preprocessor”,是一种被广泛应用的开源通用脚本语言,尤其适用于Web 开发并可嵌入HTML 中去。
它的语法利用了C、Java 和Perl,易于学习。
该语言的主要目标是允许 web 开发人员快速编写动态生成的 web 页面,但 PHP 的用途远不只于此。
简单来说,就是php是一种脚本语言,可以做很多事情。
①服务器端脚本②命令行脚本③编写桌面程序二、开始php(1)下载php解释器,其实win下面,最简单的还是wamp这个软件,下载下来什么都有了...(2)win下面貌似还需要,mscvr110.dll 这个链接库,vc2012运行库,安装即可(3)ide,无耻的使用了phpStorm,等哥有钱了一定给你补回来, so...三、入门引导(1)简单的输出34567891011121314151617181920 * Created by PhpStorm. * User: LENOVO * Date: 2014/9/28 * Time: 14:51 */ // 输出PHP 详细信息 echo phpinfo(); //C:php-5.6.1-Win32-VC11-x86php.exe D:dizzyphp_testindex.php //phpinfo() //PHP Version => 5.6.1 // //System => Windows NT LENOVO-PC 6.1 build 7600 (Windows 7 Ultimate Edition) i586 //Build Date => Sep 24 2014 18:54:12 //Compiler => MSVC11 (Visual C++ 2012)//Architecture => x86//Configure Command => cscript /nologo configure.js "--enable-snapshot-build" "--disable-isapi" "--enable-debug-pack" "--without-mssql" "--without-pdo-mssql" "--without-pi3web" "--with-pdo-oci=c:php-sdkoraclex86instantclient_12_1sdk,shared" "--with-oci8-12c=c:php-sdkoraclex86instantclient_12_1sdk,shared""--enable-object-out-dir=../obj/" "--enable-com-dotnet=shared" "--with-mcrypt=static" "--without-analyzer" "--with-pgo"//Server API => Command Line Interface(2)简单的表单处理四、基本语法(1)PHP 标记(2)从HTML 中分离(3)指令分隔符,注释PHP 需要在每个语句后面用分隔符结束指令。
thinkphp学习笔记
一、框架文件介绍二、创建应用1.在项目目录创建入口文件2.创建虚拟主机,访问应用三、路由形式1.什么是路由答:系统从URl参数中分析出当前请求分组、控制器和操作的过程就是“路由”。
2.Tp框架路由共有4种形式①基本get形式http://网址/index.php?m=分组&c=控制器&a=操作方法该方式是最底层的get形式、传统的参数传递方式,不时尚、不安全。
②pathinfo路径形式[默认方式]http://网址/index.php/分组/控制器/操作方法http://网址/index.php/Home/Index/advert③rewrite重写形式(伪静态技术)省略index.php入口文件http://网址/分组/控制器/操作方法http://网址/Home/Index/index④兼容形式http://网址/index.php?s=/分组/控制器/操作方法http://网址/index.php?s=/Home/Index/advert以上四种形式除了第③种,其他的url模式都可以使用四、创建控制器五、View视图模板入口程序文件index.php路由解析(控制器、操作方法)1.简单模板view调用$this->display(); //模板名称及当前控制器、当前操作方法的名称一致$this->display(模板名称); //调用当前控制器对应目录指定名称的模板$this->display(控制器/模板名称); //调用其他控制器下的具体模板文件Tp框架有两种模式:开发(调式)、生产【默认】生产模式:错误提示模糊开发模式:错误提示友好define(‘APP_DUBUG’ ,true); //开发define(‘APP_DUBUG’ ,false); //生产2.已有模板及tp框架做结合具体实现步骤:A.复制模板文件到View指定目录B.复制css、img、js静态文件到系统指定目录C.把静态资源(css、img、js)文件的路径设置为“常量”信息(在index入口文件设置)D.在模板文件中通过常量引入静态资源(css、img、js)文件,路径相对入口文件设置最好设置绝对地址(相对工作站点虚拟主机目录的绝对地址)为了后期模板维护方便,通过常量设置静态资源文件访问目录地址E.css文件本身的图片设置,其路径相对c ss文件本身设置后续a、d重复实现即可2.1静态资源文件引入2.2静态资源文件存放①通过独立路由可以访问②不要暴露太多目录信息在模板index.html里边引入css文件,相对地址为什么相对index.php入口文件设置?Index.php+Controller控制器+模板文件==混编文件引入css文件2.3 css文件引入图片路径设置绝对、相对地址:一个文件引入另一个文件,另一个文件的相对地址就相对引入文件设置。
php学习笔记
PHP 学习笔记PHP 是一种被广泛使用的开源脚本语言;declare(encoding='UTF-8');//定义编码方式运行 PHP 工程(wampServer) : 1、 需要对应的 web 服务器 2、 安装 PHP 3、 安装数据库 Php 脚本可放置于文档中的任何位置; Php 脚本以<?php 开头,以 ?>结尾; 在 PHP 中,所有用户定义的函数、类和关键词(例如 if、else、echo 等等)都对大 小写不敏感。
但是所有定义的变量都对大小写敏感。
变量: 变量的声明用$标识符$str=”007”;,而且之后在使用变量的时候,标识符$不 能丢掉,因为已经成为一个整体了。
函数之外声明的变量拥有 Global (全局) 作用域,只能在函数以外进行访问。
函数内部声明的变量拥有 Local(局部) 作用域,能在函数以内进行访问。
但是如果想在函数内访问全局变量,那么就得在函数内变量前引用 global 关 键词,例如: $x=1;$y=2 function text(){ global $x,$y; $y=$x+$y; } 或者: function text(){ $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];//关联数组模式 } 因为在名为 $GLOBALS[index] 的数组中存储了所有的全局变量, 所以可以这样引 用。
常量: 常量的值在脚本中不能改变,而且在整个脚本中都能使用,常量名不用$修 饰符,常量的定义(定义时用双引号“”括起来):define(string constant_name, mixed value, case_sensitive = true)常量名 PHP 中 const 的使用以及与 define 的区别常量值是否大小写敏感1、 const 用于类成员变量定义, 一旦定义且不能改变其值。
简单介绍ThinkPHP3.1.3使用笔记
简单介绍ThinkPHP3.1.3使⽤笔记ThinkPHP是国内⼀款⾮常不错的框架了,在学习ThinkPHP之前进我们必须了解php mysql及mvc模式了,懂了这些你才可以学习ThinkPHP了,下⾯我就简单的介绍我的学习笔记吧。
框架只是⼯具,它只是将你所经常⽤的代码按照⼀定的模式整理起来。
⽅便程序员快速开发,也⽅便团队协调⼯作。
但框架的基础是语⾔。
如果连PHP有多少个超级全局变量都不知道的话,还是需要返回去好好打打基础。
磨⼑不误砍柴⼯。
我的⼀个前辈说过,阅读⾼⼿写的代码是程序员迅速提升的最佳捷径。
确实是这样,如果只是照着书写个简单的增改删查,也许你永远是⼀个低级程序员(也写程序猿,也写程序媛)。
要⼤胆的跳出思维限制。
在⾃⼰尝试学习的时候要多改框架。
积极使⽤echo,print_r,var_dump等。
在你驾驭了框架的时候,当然可以按照⾃⼰的实际需求修改了,它再⽜逼也是你完成项⽬的⼯具⽽已。
就像骑车⼦,先可以买整车,当充分了解的时候,你就可以按照⾃⼰的需求组车了。
兴趣是学习最⼤的动⼒。
如果喜欢,⼀定坚持下去。
我觉得现在的社会⼤部分⼈的幸福指数是很低的,⼯作虽然是糊⼝的⼿段,但也是陪伴⼏乎你⼀⽣的东西,不要⼲了⼏⼗年⾃⼰的⼯作,回头想想没有⼀点乐趣。
学习ThinkPHP之前需要掌握的东西:PHP,MySql,MVC模式。
再说ThinkPHP框架缓存之前,我想说说,ThinkPHP绝对是可以和CI相媲美的优秀框架。
⽽且是国内数⼀数⼆的PHP框架。
TP中有⼀个常量APP_DEBUG,位于⼊⼝⽂件ThinkPHP.php中。
这个常量是⽤来设置是否开启调试模式,我们可以在引⼊⼊⼝⽂件前进⾏⾃定义。
如果将其置为FALSE,则会在runtime⽂件夹下⽣成⼀份~runtime.php的⽂件(路径和⽂件名均可修改)。
但是⽂件去掉注释,空格和换⾏。
如果直接看这份⽂件,太过费事。
查看源码,我们可以在runtime.php中找到⼀个函数:build_runtime_cache(),在写⼊缓存前使⽤了函数strip_whitespace()。
PHP自学笔记之精简版
PHP 注:书一:PHP 4.0 入门与提高清华大学出版社吕京涛陈宗斌著2002年1月第1版2002年8月第2次印刷书二:Web 专家PHP高级编程清华大学出版社Christopher Cosentino 著崔玮译2003年12月第1次印刷定价:32.00元书三:PHP4开发指南清华大学出版社Bill McCarty 著天宏工作室译2002年12月第1次印刷定价:58.00元网址:第一章:PHP概述一、概述1.句法<?phpecho“这是一个php程序”;?>或:<?echo“这是一个php程序”;?>或:<?= “这是一个php程序”?>2.终止PHP脚本的执行exit();3.注释1).#注释内容2).// 注释内容3)./* 注释内容*/二、包含文件1.require(filename)注:filename文件中不能包括return语句如:require(“myphp.php”);2.require_once(filename)确保给定的脚本中只包括一次指定的文件如:require_once (“myphp.php”);3.include(filename)注:filename文件中可以包括return语句如:include(“myphp.php”);同时include支持表达式$x=1;include(“file”.$x.”inc”);4.include_once(filename)确保给定的脚本中只包括一次指定的文件5.注意:如:$a=1;include(“myphp.php”); //在myphp.php文件中仍然可以访问$a的值第二章:语法基础一、语法基础1.数据类型1)类型转换方法一://不改变原操作数的类型(int)$x; //或(integer)$x;(real)$x; //或(double)$x; 或(float)$x;(string)$x;(array)$x;(object)$x;方法二://不改变原操作数的类型Doubleval($x); //将参数视为双精度数Intval($x); //将参数视为整型数Strval($x): //将参数视为字符串型方法三://改变原操作数的类型$x=1.5;settype($x,”integer”); //$x=1参数值:integer double string array object2).取得操作数类型方法一:$x=1;gettype($x); //integer方法二:is_long is_double is_string is_array is_object2.字符串1).转义字符\ n 换行符\ r 回车\ r 横表\ \ 反斜线\ $ 货币符号\ “双引号2).使用ASCCII码for($i=32;$i<128;$i++){$c=chr($i);$octal=decoct($i);$hex=dechex($i);echo =”<br>$i(octal $octal,hex $hex):$c”;}3).单引号字符串注:[1].在单引号字符串中,惟一允许的转义序列是\ \和\ …[2].在输出单引号字符串时,不会执行变量替换4) printf(“the value of n is:%d”,$n);$result=sprintf(“the value of n is:%d”,$n);5).number_format()格式:number_format(number);number_format(number,decimals);number_format(number,decimals,dec_point,thousands_sep);参数:number:指定想要格式化的数值decimals:指定期望的小数位数thousands_sep:指定用作千位分隔符的字符默认:格式化后的结果没有小数在任何小数位之前插入一个点(。
PHP正则表达式笔记和实例
PHP正则表达式笔记和实例本⽂主要介绍如何在PHP使⽤正则表达式,并附带⼏个实例.这两天⼯作⽤到了正则表达式,发现⾃⼰已经忘记的差不多了,囧啊!找来以前的学习笔记,好好看了⼀下,⼜巩固了这些知识,⼯作算是完成了,不过正则要学的东西还是蛮多的,以下是整理的以前的笔记和⼀些实例!⽬录:笔记⼀、正则表达式的介绍:⼆、语法:三、正则表达式的组成部分:四、正则表达式的函数:实例1.正则表达式匹配2.正则的元字符匹配3.正则表达式匹配⽹页4正则的其他函数使⽤5.⼦存储(扩展)笔记:⼀、正则表达式的介绍:正则表达式是⽤于描述字符排列和匹配模式的⼀种语法规则。
它主要⽤于字符串的模式分割、匹配、查找及替换操作。
1. ⽤途:匹配、查找、替换、分割2. php提供了两套正则表达式函数库*1. Perl 兼容正则表达式函数(推荐使⽤)2. POSIX 扩展正则表达式函数⼆、语法:1. 表达式的格式: "/表达式/[修正符]"解释:其中"/"表⽰正则表达式的定界符,但是也可以是其他符号:如”#“,”!“注意:定界符不可以是字母、数字和斜线\。
像“#”、“|”、“!”等都可以的如:/.../ #...# |....|其中修正符是可选的,表⽰对表达式做额外的修饰。
三、正则表达式的组成部分:1. 原⼦是组成正则表达式的基本单位,在分析正则表达式时,应作为⼀个整体。
原⼦包括以下内容:> 单个字符、数字,如a-z,A-Z,0-9。
> 模式单元,如(ABC)可以理解为由多个原⼦组成的⼤的原⼦。
> 原⼦表,如 [ABC]。
> 重新使⽤的模式单元,如:\\1> 普通转义字符,如:\d, \D, \w> 转义元字符,如:\*,\.> 元字符*2. 元字符(具有特殊意义字符):[] 表⽰单个字符的原⼦表例如:[aoeiu] 表⽰任意⼀个元⾳字母[0-9] 表⽰任意⼀位数字[a-z][0-9]表⽰⼩写字和⼀位数字构成的两位字符[a-zA-Z0-9] 表⽰任意⼀位⼤⼩字母或数字[^] 表⽰除中括号内原⼦之外的任何字符是[]的取反例如:[^0-9] 表⽰任意⼀位⾮数字字符[^a-z] 表⽰任意⼀位⾮⼩写字母{m} 表⽰对前⾯原⼦的数量控制,表⽰是m次例如:[0-9]{4} 表⽰4为数字[1][3-8][0-9]{9} ⼿机号码{m,} 表⽰对前⾯原⼦的数量控制,表⽰是⾄少m次例如: [0-9]{2,} 表⽰两位及以上的数字{m,n}表⽰对前⾯原⼦的数量控制,表⽰是m到n次例如: [a-z]{6,8} 表⽰6到8位的⼩写字母* 表⽰对前⾯原⼦的数量控制,表⽰是任意次,等价于{0,}+ 表⽰对前⾯原⼦的数量控制,表⽰⾄少1次,等价于{1,}表⽰对前⾯原⼦的数量控制,表⽰0次或1次(可有可⽆)等价于{0,1}例如:正整数:[1-9][0-9]*整数:[\-]?[0-9]+email:() 表⽰⼀个整体原⼦,【还有⼀个⼦存储单元的作⽤】。
thinkphp3.2笔记(4)模板函数的使用foreach标签
thinkphp3.2笔记(4)模板函数的使⽤foreach标签⼀模板函数的使⽤1.代码效果:函数会按照从左到右的顺序依次调⽤。
如果你觉得这样写起来⽐较⿇烦,也可以直接这样写:{:substr(strtoupper(md5($name)),0,3)}默认值输出{$user|default="这家伙很懒,什么也没留下"}2 模板运算符{:3+4*2-1} 效果10{3+4*2-1} 效果 {3+4*2-1}在使⽤运算符的时候,不再⽀持点语法和常规的函数⽤法,例如:{$user.score+10} //错误的{$user['score']+10} //正确的{$user['score']*$user['level']} //正确的{$user['score']+myFun($user['level'])} //正确的⼆ foreach 标签foreach标签类似与volist标签,只是更加简单,没有太多额外的属性,例如:<foreach name="list" item="vo">{$vo.id}:{$}</foreach>name表⽰数据源 item表⽰循环变量。
可以输出索引,如下:<foreach name="list" item="vo" >{$key}|{$vo}</foreach>也可以定义索引的变量名<foreach name="list" item="vo" key="k" > { $k}|{$vo}</foreach>三 if标签与⽐较标签⽐较标签⽐较标签⽤于简单的变量⽐较,复杂的判断条件可以⽤if标签替换,⽐较标签是⼀组标签的集合,基本上⽤法都⼀致,如下:<⽐较标签 name="变量" value="值">内容</⽐较标签>系统⽀持的⽐较标签以及所表⽰的含义分别是:标签含义eq或者 equal 等于neq 或者notequal 不等于gt ⼤于egt ⼤于等于lt ⼩于elt ⼩于等于heq 恒等于nheq 不恒等于他们的⽤法基本是⼀致的,区别在于判断的条件不同,并且所有的⽐较标签都可以和else标签⼀起使⽤。
php笔记之-laravel-Redisset集合
php笔记之-laravel-Redisset集合set 集合操作sadd增加set集合元素,返回true,重复返回false$redis->sadd('set1', 'ab');$redis->sadd('set1', 'cd');$redis->sadd('set1', 'ef');srem移除指定元素$redis->srem('set1', 'cd'); // 删除'cd'元素spop弹出⾸元素$redis->spop('set1'); // 返回 'ab'smove移动当前set集合的指定元素到另⼀个set集合$redis->sadd('set2', '123');$redis->smove('set1', 'set2', 'ab'); // 移动'set1'中的'ab'到'set2', 返回true or false;此时 'set1'集合不存在 'ab' 这个值scard返回当前set表元素个数$redis->scard('set2'); // 返回 2sismember判断元素是否属于当前set集合$redis->sismember('set2', '123'); // 返回 true or falsesmembers返回当前set集合的所有元素$redis->smembers('set2'); // 返回 array('123','ab')sinter/sunion/sdiff返回两个表中元素的交集/并集/补集$redis->sadd('set1', 'ab') ;$redis->sinter('set2', 'set1') ; //返回array('ab')sinterstore/sunionstore/sdiffstore将两个表交集/并集/补集元素 copy 到第三个表中$redis->set('foo', 0);$redis->sinterstore('foo', 'set1'); // 等同于将'set1'的内容copy到'foo'中,并将'foo'转为set表$redis->sinterstore('foo', array('set1', 'set2')); // 将'set1'和'set2'中相同的元素 copy 到'foo'表中, 覆盖'foo'原有内容srandmember返回表中⼀个随机元素$redis->srandmember('set1') ;有序set表操作sadd增加元素,并设置序号,成功返回true,重复返回false$redis->zadd('zset1', 1, 'ab');$redis->zadd('zset1', 2, 'cd');$redis->zadd('zset1', 3, 'ef');zincrby对指定元素索引值的增减,改变元素排列次序$redis -> zincrby ( 'zset1' , 10 , 'ab' ) ; //返回11zrem移除指定元素$redis->zrem('zset1', 'ef'); // 返回 true or falsezrange按位置次序返回表中指定区间的元素$redis->zrange('zset1', 0, 1); // 返回位置 0 和 1 之间(两个)的元素$redis->zrange('zset1', 0, -1); // 返回位置 0 和倒数第⼀个元素之间的元素(相当于所有元素)zrevrange同上,返回表中指定区间的元素,按次序倒排$redis->zrevrange('zset1', 0, -1); // 元素顺序和zrange相反zrangebyscore/zrevrangebyscore按顺序/降序返回表中指定索引区间的元素$redis->zadd('zset1', 3, 'ef');$redis->zadd('zset1', 5, 'gh');$redis->zrangebyscore('zset1', 2, 9); //返回索引值2-9之间的元素 array('ef','gh')$redis->zrangebyscore('zset1', 2, 9, 'withscores'); // 返回索引值2-9之间的元素并包含索引值 array(array('ef',3),array('gh',5))//返回索引值2-9之间的元素,'withscores' =>true表⽰包含索引值; 'limit'=>array(1, 2),表⽰偏移1条,返回2条,结果为array(array('ef',3),array('gh',5))$redis->zrangebyscore('zset1', 2, 9, array('withscores'=>true, 'limit'=>array(1, 2)));zunionstore/zinterstore将多个表的并集/交集存⼊另⼀个表中$redis->zunionstore('zset3', array('zset1', 'zset2', 'zset0')); //将'zset1','zset2','zset0'的并集存⼊'zset3'$redis->zunionstore('zset3', array('zset1', 'zset2'), array('weights' => array(2, 1))); //weights参数表⽰权重,其中表⽰并集后 zset1集合的分 * 2 后存储到 zset3 集合, zset2集合的分 * 1 后存储到 zset3 集合$redis->zunionstore('zset3', array('zset1', 'zset2'), array('aggregate' => 'max')); //'aggregate' => 'max'或'min'表⽰并集后相同的元素是取⼤值或是取⼩值zcount统计⼀个索引区间的元素个数$redis->zcount('zset1', 3, 5); // 返回 2$redis->zcount('zset1', '(3', 5)); //'(3'表⽰索引值在3-5之间但不含3,同理也可以使⽤'(5'表⽰上限为5但不含5zcard统计元素个数$redis->zcard('zset1'); // 返回 4zscore查询元素的索引$redis->zscore('zset1', 'ef'); // 返回 3zremrangebyscore删除⼀个索引区间的元素$redis->zremrangebyscore('zset1', 0, 2); // 删除索引在0-2之间的元素('ab','cd'), 返回删除元素个数2 zrank/zrevrank返回元素所在表顺序/降序的位置(不是索引)$redis->zrank('zset1', 'ef'); // 返回0,因为它是第⼀个元素;zrevrank则返回1(最后⼀个) zremrangebyrank删除表中指定位置区间的元素$redis->zremrangebyrank('zset1', 0, 10); //删除位置为0-10的元素,返回删除的元素个数2。
Thinkphp6笔记八:公共函数配置
Thinkphp6笔 记 八 : 公 共 函 数 配 置
方式一:文件位置:app_name/common.php
<?php // 这是系统自动生成的公共文件 function test(){
echo 'test1'; }
作用: 用户密码加密、订单号生成、手机号截取、身份证号截取、CURL......以及自己的常用函数库,方便自己在模型、控制器、其他地方调用
************************************************ Thinkphp高级交QQ流群:101766150 作者:狂奔的蜗牛 转载请注明出处 **********************************n test();
方式二:文件位置:app_name/admin/common.php
<?php // 这是系统自动生成的公共文件 if(!function_exists('test')){
function test(){ echo 'test';
} }
注意: 1.模块下common.php(admin/common.php) 如果不写function_exists会报错。 2.如果有多个common.php文件,优先级别:外层公共函数>应用公共函数(app_name/common>app_name/admin/common)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.PHP explode() 函数把字符串打散为数组
<?php
$str = "Hello world. I love Shanghai!";
print_r (explode(" ",$str));
?>
PHP implode() implode() 函数用于将数组元素组合为一个字符串,并返回该字符串<?php
$array = array('姓名', '电话', '电子邮箱');
$char = implode("^", $array);
echo $char;
?>
2.PHP mt_rand() 函数使用Mersenne Twister 算法返回随机整数
mt_rand(min,max)
3.PHP strtotime() 函数将英文文本日期时间解析为Unix 时间戳
<?php
echo(strtotime("now") . "<br>");
echo(strtotime("15 October 1980") . "<br>");
echo(strtotime("+5 hours") . "<br>");
echo(strtotime("+1 week") . "<br>");
echo(strtotime("+1 week 3 days 7 hours 5 seconds") . "<br>");
echo(strtotime("next Monday") . "<br>");
echo(strtotime("last Sunday"));
?>
4.PHP in_array() 函数在数组中搜索值"Glenn" ,并输出一些文本
<?php
$people = array("Bill", "Steve", "Mark", "David");
if (in_array("Mark", $people))
{
echo "匹配已找到";
}
else
{
echo "匹配未找到";
}
?>
5.PHP array_keys() 函数返回包含数组中所有键名的一个新数组
<?php
$a=array("Volvo"=>"XC90","BMW"=>"X5","Toyota"=>"Highlander");
print_r(array_keys($a));
?>
6.PHP strtoupper() 函数strtoupper() 函数把字符串转换为大写。
<?php
echo strtoupper("Hello WORLD!");
?>
7.php strtolower(): 该函数将传入的字符串参数所有的字符都转换成小写,并以小定形式放回这个字符串
8.strtotime() 函数将任何英文文本的日期时间描述解析为Unix 时间戳。
9.msubstr=0,50 (th框架字符串截取)
10. jquery 用字符或字符串分割
<script>
var str=new String();
var arr=new Array();
str="ddd,dsd,3,dd,g,k";
arr=str.split(',');//注split可以用字符或字符串分割
for(var i=0;i<arr.length;i++)
{
alter(arr[i]);
}
</script>
11. jquery 推迟几秒加载
setTimeout(function(){
window.location.href = res.url;
},2000);。