您好,欢迎访问三七文档
PHP复习资料1、环境是怎么配置的(net、httpd.conf),加密的httpf是什么端口80.net勾选.netframeworkPhp环境搭建(Apache2.0)1找到php目录下的php.ini-dist或php.ini.recommended文件,重命名为php.ini并复制到系统盘的windows目录下(以c:\windows为例).2再把php目录下的php5ts.dll,libmysql.dll复制到目录c:\windows\system32下。3把php5\ext目录下的php_gd2.dll,php_mysql.dll,php_mbstring.dll文件复制到c:\windows\system32下4打开c:\windows\php.ini文件(关联到mysql)设置扩展路径查找extension_dir有这么一行extension_dir=./将此行改成extension_dir=C:\php5\ext其中C:\php5是你安装php的路径。路径不正确将无法加载dll(注意:有些php版本是;extension_dir=./要把前面的分号去掉)查找extensionextension=php_mbstring.dllextension=php_gd2.dllextension=php_mysql.dll把上面3项前面的分号去掉,这样apache启动时就可以加载这些dll了在httpd.conf的最后一行写下LoadModulephp5_moduleD:/php5/php5apache2.dllPHPIniDirC:/WINDOWSAddTypeapplication/x-httpd-php.phpAddTypeapplication/x-httpd-php.htmlAddTypeapplication/x-httpd-php.htmAlias/aaD:/aa/DirectoryD:/aaOptionsIndexesMultiViewsAllowOverridenoneOrderallow,denyXampp安装httpd.conf:documentroot路径修改php.ini:ssl启用extension=php_openssl.dll2、MYsql常用端口33063、配置文件,如:apache用的是哪一个配置文件,内容是什么,documentroot怎么修改,指的什么,为什么修改4、在PHP里配置Mysql的拓展(.exe),当时的文件名是什么,mysqli或者php.ini5、PHP常用类型,如:浮点等基本类型可使用函数var_dump()来查看某个表达式的值和类型var_dump($one);整型:1、在php中一个整型数据可以用十进制,也可以用八进制和十六进制;2、Php不支持无符号整数,如果给定的一个数超出了integer的这个范围,将会解释为float。一个数总是要占用内存空间(字节),在php中,一个整数一般占用4个字节(与平台相关),一个字节占用8bit,最高位表示符号位,0为正数,1为负数3、通过PHP_INT_SIZE可以显示我们自己的机器一个整数用几个字节表示一个整数究竟最大是PHP_INT_MAX浮点数:1、浮点数也叫双精度数或实数.2、浮点数的字长和平台相关,通常最大值是1.8e308,并且有14位十进制数字的精度(这个限制很重要),浮点数的精度是14位(从左边开始计算,第一个非0数就是精度开始)3、浮点型(即为小数型):浮点型在计算中用二进制存储,转10进制有误差。如果追求精度,比如存钱时,可以用整形存,比如用分来存储。字符串:1、一个字符串就是由一系列的字符组成,因此一个字符就是占用一个字节。2、php对字符串长度的限制只和运行php程序的该台计算机的内存大小有关,即php字符串可以足够大。单引号和双引号区别:(1)单引号可以使用转义字符(\),但只能转义在单引号中引起来的单引号和转义转义符本身。(2)php不会解析单引号中的变量,而是将变量原样输出。所以在定义简单字符串时,使用单引号时效率会更高,因为php解析时不会花费一些处理字符转义和解析变量上的开销。(3)双引号会解析双引号中的包含变量。定界符:给字符串定界的方法使用定界符语法(“”)。应该在之后提供一个标识符开始,然后是包含的字符串,最后是同样的标识符结束字符串布尔型:在php进行关系运算(或称比较运算),以及布尔运算(或称逻辑运算)时,返回的都是布尔结果。简单说,布尔类型就是两个值true,false,不区分大小写。$a=true;$b=false;NULL类型:特殊的NULL值表示一个变量没有值,NULL类型唯一可能的值就是NULL。NULL不表示空格,也不表示零,也不是空字符串,而是表示一个变量的值为空。NULL不区分大小写。在下列情况下一个变量被认为是null。(1)将变量直接赋值为null(2)声明的变量尚未被赋值(3)被unset()函数销毁的变量6、Session、cookie有什么作用,把值存到cookie或session,怎么存怎么取7、PHP里做重定向,要写代码Returnredirect(‘home’)//重定向回home页面8、I++,i--,++i,--i9、PHP里include,require,include_once、requir_once的区别require()语句的性能与include()相类似,都是包括并运行指定文件。不同之处在于:对include()语句来说,在执行文件时每次都要进行读取和评估;而对于require()来说,文件只处理一次(实际上,文件内容替换require()语句)。这就意味着如果可能执行多次的代码,则使用require()效率比较高。另外一方面,如果每次执行代码时是读取不同的文件,或者有通过一组文件迭代的循环,就使用include()语句。require的使用方法如:require(myfile.php),这个语句通常放在PHP脚本程序的最前面。PHP程序在执行前,就会先读入require()语句所引入的文件,使它变成PHP脚本文件的一部分。include使用方法和require一样如:include(myfile.php),而这个语句一般是放在流程控制的处理区段中。PHP脚本文件在读到include()语句时,才将它包含的文件读取进来。这种方式,可以把程式执行时的流程简单化。•incluce在用到时加载•require在一开始就加载•_once后缀表示已加载的不加载PHP系统在加载PHP程序时有一个伪编译过程,可使程序运行速度加快。但incluce的文档仍为解释执行。include的文件中出错了,主程序继续往下执行,require的文件出错了,主程序也停了,所以包含的文件出错对系统影响不大的话(如界面文件)就用include,否则用require。require()和include()语句是语言结构,不是真正的函数,可以像php中其他的语言结构一样,例如echo()可以使用echo(ab)形式,也可以使用echoabc形式输出字符串abc。require()和include()语句也可以不加圆括号而直接加参数。include_once()和require_once()语句也是在脚本执行期间包括运行指定文件。此行为和include()语句及require()类似,使用方法也一样。唯一区别是如果该文件中的代码已经被包括了,则不会再次包括。这两个语句应该用于在脚本执行期间,同一个文件有可能被包括超过一次的情况下,确保它只被包括一次,以避免函数重定义以及变量重新赋值等问题。2.1报错include引入文件的时候,如果碰到错误,会给出提示,并继续运行下边的代码。require引入文件的时候,如果碰到错误,会给出提示,并停止运行下边的代码。2.2条件引用include()与require()的功能相同,用法上却有一些不同,include()是有条件包含函数,而require()则是无条件包含函数。2.3文件引用方式include()执行时需要引用的文件每次都要进行读取和评估,require()执行时需要引用的文件只处理一次(实际上执行时需要引用的文件内容替换了require()语句)可以看出若有包含这些指令之一的代码和可能执行多次的代码,则使用require()效率比较高,若每次执行代码时相读取不同的文件或者有通过一组文件叠代的循环,就使用include(),可以给想要包括的文件名设置变量,当参数为include()时使用这个变量。大题正则表达式:必选参数:Route::get('/hello/{name}',function($name){returnHello{$name}!;});在浏览器中访问输出:HelloLaravel!当然还可以指定多个参数:Route::get('/hello/{name}/by/{user}',function($name,$user){returnHello{$name}by{$user}!;});这样在浏览器中访问学院则会输出:HelloLaravelbyLaravel学院!注意以上参数是必选的,如果没有输入参数会抛出MethodNotAllowedHttpException或NotFoundHttpException异常。此外闭包函数中的参数与路由参数一一对应。可选参数:有时候我们并不总是想要输入对应参数,也就是说,我们期望参数是可有可无的,我们通过这种方式来定义:Route::get('/hello/{name?}',function($name=Laravel){returnHello{$name}!;});我们同时为可选参数指定了默认值,这样当我们访问时输出:HelloLaravel!当我们访问学院的时候输出:HelloLaravel学院!正则约束:有时候我们希望对路由有更加灵活的条件约束,可以通过正则表达式来实现:Route::get('/hello/{name?}',function($name=Laravel){returnHello{$name}!;})-where('name','[A-Za-z]+');该条件约束意味着$name参数只能包含大小写字母,如果包含数字或中文就会抛出NotFoundHttpException异常。如果我们想要在全局范围内对参数进行条件约束,可以在RouteServiceProvider的boot方法中做如下定义:publicfunctionboot(Router$router){$router-pattern('name','[A-Za-z]+');//Pattern是正则表达式经编译后的表现模式。parent::boot($router);}我们访问学院时一样会抛出NotFoundHttpException异常。这意味着boot方法定义的参数条件约束将会应用到所有包含该参数的路由中。建立中间件:要建立一个新的中间件,可以使用make:middleware这个Artisan命令:phpartisanmake:middlewareOldMiddleware此命令将会在app/Http/Middleware目录内置立一个名称为OldMiddleware的类。在这个中间件内我们只允许年龄大于200的才能访问路由,否则,我们会将用户重新导向「home」的URI。?phpnamespaceApp\Http\Middleware;useClosure;
本文标题:PHP复习资料
链接地址:https://www.777doc.com/doc-2850405 .html