2020-10-29
php源码的使用方法讲解

php源码的使用方法讲解

PHP程序都要用MYSQL,如果没有MYSQL,就不能用它们. 第一:配置数据库信息,改成自己所需的; 第二:导入数据库; 第三:安装wamp5 输入 http://127.0.0.1/自己的文件名。 1:如果是php源码,在本地电脑使用时。要先安装phpnow环境套件包(下附),里面包含了php+mysql等,也是用迅雷搜索下载。那个套件安装很傻瓜化,不用我说了。 2:把所有的源码复制到套件安装目录下的htdocs文件夹里,使用方法如上面的3。 3:如果打不开,请先确定你的数据库是需要导入的吗?如果是,请用http://127.0.0.1/phpmyadmin/导入数据库。再检查数据库连接文件config.php(用记事本打开,一般是这个文件。)里的数据库连接参数如密码等是否正确,否则改之。 4:如果你添加了虚拟主机,想在虚拟主机里运行php源码,那就把源码复制到虚拟主机所控的文件夹下,用“http://虚拟主机地址/ ”来访问。 以上就是php源码怎么使用的详细内容,更多请关注梦主博客其它相关文章!...
技术教程 1720次浏览 0条评论
2020-10-29
php源码的安装方法和实例

php源码的安装方法和实例

在官网下载源码包:https://www.php.net/downloads.php 步骤: 1、解压 命令:tar -xjvf php.tar.bz2 2、configure configure工具是一个shell脚本,在配置编译前需要gcc、autoconfig工具。 可以通过./configure --help 查看配置参数 进入解压后的php目录,编译源码: ./configure --prefix=/home/php (--prefix指定安装php路径) 3、make 执行编译构建命令:make 4、make install 执行编译构建命令:make install 需要注意:执行命令:php -i | grep php.ini 查看php执行的php.ini路径,复制配置文件php.ini文件到该目录,否则加载配置文件失败 PHP命令: php -m 查看php扩展 php -v 查看版本 php --ini 查看php.ini路径 php --ri swoole 查看swoole扩展是否成功 mac pro 配置php环境变量 vim ~/.bash_profile 加入:alias php=/home/php/bin/php 保存 source ~/.bash_profile 以上就是php源码怎么安装的详细内容,更多请关注梦主博客其它相关文章!...
技术教程 2000次浏览 0条评论
2020-10-29
php伪静态验证码不显示的解决方案

php伪静态验证码不显示的解决方案

确保php环境能用,php文件能被正常服务器软件解析,也可以找到php.exe或者php-cgi.exe执行下,php配置没问题的话就是跳出一个cmd窗口且不会自动关闭,然后有一个光标一直在闪烁。 在测试网站根目录下面新建phpinfo.php文件,文件内容可以参照图片,就是phpinfo();语句,主要的作用就是显示php服务器的配置信息。 在浏览器中访问到第一步中新建的phpinfo.php文件。Ctrl+F查询gd,如果有出现,就表示gd2库已经加载了,如果验证码还是不显示,请继续看下一步。 特别是utf-8的项目,很多新手习惯使用了windows自带的记事本对网站一些配置文件进行修改保存,这样配置文件的编码也随之变化了,一般是由无bom的utf-8变成了utf-8。可以说记事本跟utf-8的php项目来说简直就是噩梦啊,也是新手比较常犯的一个低级失误了。 使用notepad++或其他编辑软件对配置文件(也有可能是别的文件,自己核对下那些文件是被记事本修改过的)进行编码转换,将PHP文件编码重新修改为无bom的utf-8编码格式,点击保存下,大功告成。据说那些编程高手都是一个记事本就能写一套系统的,那他们是怎么解决这个无bom的utf-8编码格式的问题的。 示怎么解决的详细内容,更多请关注梦主博客其它相关文章! ...
技术教程 1790次浏览 0条评论
2020-10-29
php中关于换行的实例写法

php中关于换行的实例写法

在编写PHP脚本代码的时候,我们经常会看到\n和<br/>这两个字符,它们都有换行的作用,那么到底有什么区别呢? 1.\n是使源代码换行,而浏览器显示的内容不换行; 2.<br />是使浏览器显示的内容换行,而源代码不换行。 例如,PHP代码1: <?php echo 0; echo "\n"; echo 1; ?> 例如 <?php echo 0; echo "<br />"; echo 1; ?> 好了,这就是\n和<br />的区别了,希望对大家有帮助,也感谢大家对梦主博客的支持。...
技术教程 1980次浏览 0条评论
2020-10-29
php面向对象重点知识分享

php面向对象重点知识分享

1、$this是什么 当前类实例化的对象 2、访问对象中的成员 对象->成员 3、构造方法 通常用来初始化对象的属性,不用把属性写死,不同的对象就有了不同的属性 4、get、set的用法 通常将属性设为protected,利用getXxx和setXxx方法来设置和获取属性的值,避免外部随意的更改,同时还可以对对象进行过滤。 5、类的封装 public方法可以在类外访问,相当于提供给外部的接口 private方法只能在类内(即类的大括号内),外部不能直接访问,只能通过其他public方法来调用,就像电脑的开关,按电源键就可以开 机。 protected,同private,不过可以在其他的类中继承。 6、类的继承与重写 (extends) 继承的类可以访问父类的public和protected方法或属性,避免了代码的重写。 继承的类重写父类的方法只需取与父类同样的方法名,在里面写自己的代码即可。 7、抽象类(abstract) 抽象类是用来继承的,不能直接实例化,抽象方法不用写方法体 作用是硬性的规定子类需要实现的方法,不实现不能实例化 8、接口(interface) 继承使用implements 保证代码的一致性 9、命名空间与自动加载(namespace) 避免重名冲突,避免每次使用类前require的操作 申明类前有namespace 文件位置 namespace app/Admin; 使用类前有use namespace/类名 use app/Admin/User; 10、静态变量和静态方法 可以看作是全局性的方法 不用实例化对象即可使用 使用方法:类名::成员 11、const变量 const主要是用于一些硬性的规定数据和约定俗成的数据码上面,可在类外使用,只能在定义处修改,比如我们的http状态码 定义:const ABC=12; 使用:类名::ABC; 以上就是php面向对象哪些重点的详细内容,感谢大家的学习和对梦主博客的支持。...
技术教程 1510次浏览 0条评论
2020-10-29
PHP的JSON封装、转变及输出操作示例

PHP的JSON封装、转变及输出操作示例

本文实例讲述了PHP的JSON封装、转变及输出操作。分享给大家供大家参考,具体如下: Json封装 protected function renderJSON($data=[], $msg ="ok", $code = 200) { //设置格式 header('Content-type: application/json'); //输出json格式的内容 print_r(json_encode([ "code" => $code, "msg" => $msg, "data" => $data, "req_id" => uniqid() ])); //结束 return Yii::$app->end(); } Json转变 <?php // 告诉浏览器以json编码 header('Content-type:text/json'); $json = '{"a":1,"b":2,"c":3,"d":4,"e":5}'; // 没有设置则输出对象 var_dump(json_decode($json)); echo "<br>"; // 为true则为输出数组 var_dump(json_decode($json, true)); echo "<br>"; $array=array('a','f','q','d','a','g'); var_dump(json_encode($array,JSON_HEX_TAG)); ?> Json输出 <?php // 告诉浏览器以json编码 header('Content-type:text/json'); $json = '{"fruit":{{"apple":"苹果"},{"banana":"苹果"}}'; // string(49) "{"fruit":{{"apple":"苹果"},{"banana":"苹果"}}" var_dump($json); PS:本站还提供了如下XML与JSON相关工具,方便大家参考使用: 在线XML/JSON互相转换工具: http://tools.jb51.net/code/xmljson php代码在线格式化美化工具: http://tools.jb51.net/code/phpformat 在线XML格式化/压缩工具: http://tools.jb51.net/code/xmlformat json代码在线格式化/美化/压缩/编辑/转换工具: http://tools.jb51.net/code/jsoncodeformat 更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP中json格式数据操作技巧汇总》、《PHP针对XML文件操作技巧总结》、《PHP基本语法入门教程》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》 希望本文所述对大家PHP程序设计有所帮助。...
技术教程 1520次浏览 0条评论
2020-10-29
PHP下载文件函数与用法示例

PHP下载文件函数与用法示例

本文实例讲述了PHP下载文件函数与用法。分享给大家供大家参考,具体如下: 文件链接 <div> <a href="./file.zip" rel="external nofollow" >链接</a> </div> PHP拼接下载 <div> <a href = "http://aa.aa.aa/funtwo.php?filename='file'">链接</a> </div> <?php //获取文件名 取出单引号 完善文件名 $filename = $_GET['filename']; $filename=trim($filename,"''"); $filename = $filename.'.zip'; //获取文件名称 // header:主机名文件名 下载 $host_addr = $_SERVER['HTTP_HOST'].'/'; //当前域名 header('location:http://'.$host_addr.$filename); Header附件下载 <?php //下载文件名 $file_name = 'file.zip'; //以只读和二进制模式打开文件 $file = fopen ( $file_name, "rb" ); //这是一个文件流格式的文件 Header ( "Content-type: application/octet-stream" ); //请求范围的度量单位--字节 Header ( "Accept-Ranges: bytes" ); //Content-Length是指定包含于请求或响应中数据的字节长度 Header ( "Accept-Length: " . filesize ( $file_name ) ); //用来告诉浏览器,文件是可以当做附件被下载,下载后的文件名称为$file_name该变量的值。 Header ( "Content-Disposition: attachment; filename=" . $file_name ); //读取文件内容并直接输出到浏览器 echo fread ( $file, filesize ( $file_name ) ); fclose ( $file ); 更多关于PHP相关内容感兴趣的读者可查看本站专题:《php文件操作总结》、《PHP目录操作技巧汇总》、《PHP常用遍历算法与技巧总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》及《PHP网络编程技巧总结》 希望本文所述对大家PHP程序设计有所帮助。...
技术教程 1300次浏览 0条评论
2020-10-29
PHP的cookie与session原理及用法详解

PHP的cookie与session原理及用法详解

本文实例讲述了PHP的cookie与session原理及用法。分享给大家供大家参考,具体如下: 产生背景 HTTP协议是无状态的协议。一旦数据交换完毕,客户端与服务器端的连接就会关闭,再次交换数据需要建立新的连接。这就意味着服务器无法从连接上跟踪会话。于是需要引入一种机制,COOKIE于是就顺应而生。 Session是另一种记录客户状态的机制,不同的是Cookie保存在客户端浏览器中,而Session保存在服务器上。客户端浏览器访问服务器的时候,服务器把客户端信息以某种形式记录在服务器上。这就是Session。 理解例子 以前大学的时候,经常去大卡司去喝奶茶,每喝一杯,都可以得到一个印花(第一次喝的时候他会给你个积分卡片),集齐6个印花之后,就可以免费获得一杯奶茶。这样子,印花的信息是保存在客户的积分卡上,你如果不怀好意的话,就自己搞几个神似的印花去骗奶茶喝吧。哈哈,这样子是不是更符合在客户端端(cookie)保持状态。而拿银行卡去银行取钱,我们的卡只需要保存一个卡号,更多的信息是保存在服务器中(session),这样也比较符合服务器端保持状态。 具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案。同时我们也看到,由于采用服务器端保持状态的方案在客户端也需要保存一个标识,所以session机制可能需要借助于cookie机制来达到保存标识的目的, 简述cookie PHP工作原理:PHP通过setcookie函数进行Cookie的设置,任何从浏览器发回的Cookie,PHP都会自动的将他存储在$_COOKIE的全局变量之中,因此我们可以通过$_COOKIE['key']的形式来读取某个Cookie值。 用途:PHP中的Cookie具有非常广泛的使用,经常用来存储用户的登录信息,购物车等,且在使用会话 Session时通常使用Cookie来存储会话id来识别用户,Cookie具备有效期,当有效期结束之后,Cookie会自动的从客户端删除。同时为 了进行安全控制,Cookie还可以设置域跟路径。 函数Cookie PHP设置Cookie最常用的方法就是使用setcookie函数,setcookie具有7个可选参数,我们常用到的为前5个: name( Cookie名)可以通过$_COOKIE['name'] 进行访问 value(Cookie的值) expire(过期时间)Unix时间戳格式,默认为0,表示浏览器关闭即失效 path(有效路径)如果路径设置为'/',则整个网站都有效 domain(有效域)默认整个域名都有效,如果设置了'www.imooc.com',则只在www子域中有效 $value = 'test'; setcookie("TestCookie", $value); setcookie("TestCookie", $value, time()+3600); //有效期一小时 setcookie("TestCookie", $value, time()+3600, "/path/", "imooc.com"); //设置路径与域 PHP中还有一个设置Cookie的函数setrawcookie,setrawcookie跟setcookie基本一样,唯一的不同就是value值不会自动的进行urlencode,因此在需要的时候要手动的进行urlencode。 setrawcookie('cookie_name', rawurlencode($value), time()+606024*365); 因为Cookie是通过HTTP标头进行设置的,所以也可以直接使用header方法进行设置。 header("Set-Cookie:cookie_name=value"); 删除cookie PHP设置Cookie最常用的方法就是使用setcookie函数,setcookie具有7个可选参数,我们常用到的为前5个: name( Cookie名)可以通过$_COOKIE['name'] 进行访问 value(Cookie的值) expire(过期时间)Unix时间戳格式,默认为0,表示浏览器关闭即失效 path(有效路径)如果路径设置为'/',则整个网站都有效 domain(有效域)默认整个域名都有效,如果设置了'www.imooc.com',则只在www子域中有效 $value = 'test'; setcookie("TestCookie", $value); setcookie("TestCookie", $value, time()+3600); //有效期一小时 setcookie("TestCookie", $value, time()+3600, "/path/", "imooc.com"); //设置路径与域 PHP中还有一个设置Cookie的函数setrawcookie,setrawcookie跟setcookie基本一样,唯一的不同就是value值不会自动的进行urlencode,因此在需要的时候要手动的进行urlencode。 setrawcookie('cookie_name', rawurlencode($value), time()+606024*365); 因为Cookie是通过HTTP标头进行设置的,所以也可以直接使用header方法进行设置。 header("Set-Cookie:cookie_name=value"); 简述session 在PHP中使用session非常简单,先执行session_start方法开启session,然后通过全局变量$_SESSION进行session的读写。 session_start(); $_SESSION['test'] = time(); var_dump($_SESSION); 删除session 在PHP中使用session非常简单,先执行session_start方法开启session,然后通过全局变量$_SESSION进行session的读写。 session_start(); $_SESSION['test'] = time(); var_dump($_SESSION); session会自动的对要设置的值进行encode与decode,因此session可以支持任意数据类型,包括数据与对象等。 session_start(); $_SESSION['ary'] = array('name' => 'jobs'); $_SESSION['obj'] = new stdClass(); var_dump($_SESSION); 默认情况下,session是以文件形式存储在服务器上的,因此当一个页面开启了session之后,会独占这个session文件,这样会导致当前用户的其他并发访问无法执行而等待。可以采用缓存或者数据库的形式存储来解决这个问题,这个我们会在一些高级的课程中讲到。 session存储用户信息 session可以用来存储多种类型的数据,因此具有很多的用途,常用来存储用户的登录信息,购物车数据,或者一些临时使用的暂存数据等。 用户在登录成功以后,通常可以将用户的信息存储在session中,一般的会单独的将一些重要的字段单独存储,然后所有的用户信息独立存储。 $_SESSION['uid'] = $userinfo['uid']; $_SESSION['userinfo'] = $userinfo; 一般来说,登录信息既可以存储在sessioin中,也可以存储在cookie中,他们之间的差别在于session可以方便的存取多种数据类型, 而cookie只支持字符串类型,同时对于一些安全性比较高的数据,cookie需要进行格式化与加密存储,而session存储在服务端则安全性较高。 <?php session_start();//假设用户登录成功获得了以下用户数据 $userinfo = array( 'uid' => 10000, 'name' => 'spark', 'email' => [email protected]', 'sex' => 'man', 'age' => '18'); header("content-type:text/html; charset=utf-8"); /* 将用户信息保存到session中 */ $_SESSION['uid'] = $userinfo['uid']; $_SESSION['name'] = $userinfo['name']; $_SESSION['userinfo'] = $userinfo; //* 将用户数据保存到cookie中的一个简单方法 */ $secureKey = 'imooc'; //加密密钥 $str = serialize($userinfo); //将用户信息序列化//用户信息加密前 $str = base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, md5($secureKey), $str, MCRYPT_MODE_ECB));//用户信息加密后//将加密后的用户数据存储到cookie中 setcookie('userinfo', $str); //当需要使用时进行解密 $str = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, md5($secureKey), base64_decode($str), MCRYPT_MODE_ECB); $uinfo = unserialize($str); echo "解密后的用户信息:<br>"; print_r($uinfo); 异同 1.cookie将数据存储在客户端,建立起用户与服务器之间的联系,session是将用户的会话数据存储在服务端 2.cookie相对不是太安全,容易被盗用导致cookie欺骗 3.单个cookie的值最大只能存储4k  session没有大小限制 4.每次请求都要进行网络传输,占用带宽 5.通过一个session_id进行用户识别,PHP默认情况下session id是通过cookie来保存的,因此从某种程度上来说,seesion依赖于cookie。但这不是绝对的,session id也可以通过参数来实现,只要能将session id传递到服务端进行识别的机制都可以使用session。 jQuery Cookie 插件 引入 <script src="https://cdn.staticfile.org/jquery/3.4.0/jquery.min.js"></script> <script src="https://cdn.staticfile.org/jquery-cookie/1.4.1/jquery.cookie.min.js"></script> 设置删除 $.cookie('name', 'value', { expires: 7, path: '/' }); $.removeCookie('name'); // => true 更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP中cookie用法总结》、《php缓存技术总结》、《PHP数组(Array)操作技巧大全》、《PHP网络编程技巧总结》及《php字符串(string)用法总结》 希望本文所述对大家PHP程序设计有所帮助。 ...
技术教程 1400次浏览 0条评论
微信二维码