php技巧

PHP数组array类常见操作示例

2020-05-13
本文实例讲述了PHP数组array类常见操作.分享给大家供大家参考,具体如下: array_merge($arr1,$arr2....);//合并一个或多个数组 例: 1. <?php $beginning = 'foo'; $end = array(1 => 'bar'); $result = array_merge((array)$beginning, (array)$end); print_r($result); ?> 以上例程会输出: Array     (         [0

如何通过PHP实现Des加密算法代码实例

2020-05-09
如何通过PHP实现Des加密算法代码实例 注:php7以上不支持了,因为php7去掉了某些函数, 另外变量的{}要改为[] <?php class Des { /** * 加密方法 * * @param string $str 需要加密的内容 * @param string $key 密钥 * @param bool $toBase64 是否base64 * return string */ public function encrypt($str, $key, $toBase64=true)

通过PHP实现获取访问用户IP

2020-05-08
在php中自带了一个非常的简单的获取IP地址的全局变量,很多初学都获取IP都使用它了,但是对于这些我们一般用法是满足了,但是对于要求高精度这个函数还是不行的. 这个是最简单的方法,对于开了透明代理之类的是没有办法的,如果内网访问也不能读取正确的外网IP,不过很省力就是了: $ip = $_SERVER["REMOTE_ADDR"]; 搞定~ 上面方法用来取得客户端的 IP 地址,但如果客户端是使用代理服务器来访问,那取到的就是代理服务器的 IP 地址,而不是真正的客户端 IP 地址 要

php变量与字符串的增删改查操作示例

2020-05-07
本文实例讲述了php变量与字符串的增删改查操作.分享给大家供大家参考,具体如下: 变量的使用 <?php //告诉浏览器以什么编码方式解析什么类型的文档,防止中文乱码 header("Content-type: text/html; charset=utf-8"); // 整型的例子 // 声明整型 $var=123; // 输出一个或者多个字符串 echo $var; //但因变量的详细信息,可以一次打印一个或者多个变量的详细信息 // H:\dev\wamp64\www\de

禁止直接访问php文件代码分享

2020-05-04
如何禁止别人直接访问php文件 可以通过判断某一个常量是否被定义或定义的值是否相同,如果未被定义或值不相同则停止脚本运行. defined('IS_ALLOW') or die('禁止访问!'); 访问结果:禁止访问! 如果需要在其它php文件中进行引用,可以先将常量定义后在进行引用. A-jb51.php defined('IS_ALLOW') or die('禁止'); echo "访问成功!"; B-jb51.php define('IS_ALLOW', true); requi

PHP数组与字符串互相转换实例

2020-05-03
PHP 数组转字符串,与字符串转数组 <?php $array = array('lastname', 'email', 'phone'); $comma_separated = implode(",", $array); echo $comma_separated; // lastname,email,phone // Empty string when using an empty array: var_dump(implode('hello', array())); //

php输出形式实例整理

2020-05-03
php中有几种输出形式 在php中有5种输出形式,分别是echo.print_r.print.var_dump和die. echo 只能输出字符串等单一数据 不能输出数据类型 不能输出数组等多种数据. print() 只能输出字符串等单一数据 不能输出数据类型 不能输出数组等多种数据有返回值true/false. print_r() 既能输出字符串等单一数据又能输出数组等多种数据 但是不能输出数据类型. var_dump() 既能输出字符串等单一数据又能输出数组等多种数据 又能输出数据类型. d

php将字符串转换为数组实例讲解

2020-05-02
php将字符串转换为数组 在php中通过使用"explode函数",将字符串转换为数组,该函数的用法为"explode(delimiter,string)",其参数delimiter表示为边界上的分隔字符,参数string表示为输入的字符串. explode说明 explode ( string $delimiter , string $string [, int $limit ] ) : array 此函数返回由字符串组成的数组,每个元素都是 string 的一个

PHP设计模式之 策略模式Strategy详解【对象行为型】

2020-04-30
本文实例讲述了PHP设计模式之 策略模式Strategy.分享给大家供大家参考,具体如下: 1.概述 在软件开发中也常常遇到类似的情况,实现某一个功能有多种算法或者策略,我们可以根据环境或者条件的不同选择不同的算法或者策略来完成该功能.如查找.排序等,一种常用的方法是硬编码(Hard Coding)在一个类中,如需要提供多种查找算法,可以将这些算法写到一个类中,在该类中提供多个方法,每一个方法对应一个具体的查找算法:当然也可以将这些查找算法封装在一个统一的方法中,通过if-else-或者case

php如何获取Http请求

2020-04-29
php获取Http请求的方法 $_SERVER介绍 $_SERVER是一个包含了诸如头信息(header).路径(path).以及脚本位置(script locations)等等信息的数组. 获取Http请求的方法示例 $req_method = $_SERVER['REQUEST_METHOD']; echo $req_method; 实例补充: socket方式 使用套接字建立连接,拼接 HTTP 报文发送数据进行 HTTP 请求. 一个 GET 方式的例子: <?php $fp = fso

PHP设计模式概论【概念、分类、原则等】

2020-04-28
本文实例讲述了PHP设计模式.分享给大家供大家参考,具体如下: 1. 设计模式 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了可重用代码.让代码更容易被他人理解.保证代码可靠性. 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样. 模式的经典定义:每个模式都描述了一个在我们的环境中不断出现的问题,然后描述了该问题的解决方案的核心,通过这种方

PHP 命名空间和自动加载原理与用法实例分析

2020-04-27
本文实例讲述了PHP 命名空间和自动加载原理与用法.分享给大家供大家参考,具体如下: PHP 命名空间 php5.3 之后引入了命名空间的特性,从本质上讲,命名空间就是一个容器,你可以将类.函数和变量放在其中,在命名空间中,你可以无条件地访问这些项,在命名空间之外,必须导入或引用命名空间,才能访问它所包含的项. 声明命名空间 namespace my; require_one 'outputter3.php'; class outputter { // 输出数据 public function

PHP扩展类型及安装方式解析

2020-04-27
扩展类型 底层扩展(基于C语言): PECL 上层扩展(基于PHP 语言): PEAR Composer PECL # 查找扩展 $ pecl search extname # 安装扩展 $ pecl install extname # 卸载扩展 $ pecl uninstall extname 这将下载 extname 的源代码并进行编译,然后会将 extname.so 安装到 extension_dir 中.然后 extname.so 就可以通过 php.ini 加载了. phpize ph

PHP如何开启Opcache功能提升程序处理效率

2020-04-26
简介 Opcache 的前生是 Optimizer+ ,它是 Zend 开发的 PHP 优化加速组件.Optimizer+ 将 PHP 代码预编译生成的脚本文件 Opcode 缓存在共享内存中供以后反复使用,从而避免了从磁盘读取代码再次编译的时间消耗.同时,它还应用了一些代码优化模式,使得代码执行更快.从而加速 PHP 的执行. 正常的执行流程如下: 开启 Opcache 后的执行流程如下: Yum 安装 php -v yum list *opcache* yum -y install rh-p

PHP随机生成中文段落示例【测试网站内容时使用】

2020-04-25
本文实例讲述了PHP随机生成中文段落.分享给大家供大家参考,具体如下: 在创建网站的时候,很多时候都需要输入一些中文的段落来填充页面,大多数会是找一些新闻之类的来复制粘贴. 以下代码是利用php来随机生成一些中文段落,以便用来测试. GBK版: <?php header('Content-type:text/html;charset=gbk'); function createWords($words = 128) { $seperate = array(",",".&

PHP过滤器 filter_has_var() 函数用法实例分析

2020-04-23
本文实例讲述了PHP过滤器 filter_has_var() 函数用法.分享给大家供大家参考,具体如下: 定义和用法 filter_has_var() 函数检查是否存在指定输入类型的变量. 如果成功则返回 TRUE,如果失败则返回 FALSE. 语法 filter_has_var(type, variable) 第一个参数type(必须):规定要检查的类型,可以检查的类型有INPUT_GET.INPUT_POST.INPUT_COOKIE.INPUT_SERVER.INPUT_ENV 第二个参数

PHP优化之批量操作MySQL实例分析

2020-04-21
本文实例讲述了PHP优化之批量操作MySQL.分享给大家供大家参考,具体如下: 设计一个数据表如下: create table optimization( id INT NOT NULL AUTO_INCREMENT, value VARCHAR(10) NOT NULL, PRIMARY KEY(id) ); 现在有一个业务需求需要批量插入数据. 先来看看下面这一段代码: <?php $dsn = 'mysql:dbname=test;host=127.0.0.1'; $user = 'roo

php模拟实现斗地主发牌

2020-04-21
本文实例为大家分享了php实现斗地主发牌的具体代码,供大家参考,具体内容如下 闲来无聊,就写了这个方法,也算是熟悉下php的数组操作,还请各位大神多指教.$arr 数组,好像有点问题,应该 2=>'方片2',3=>'梅花2',4=>'红心2',5=>'黑桃2', 等的顺序换下.看来牌打少了.估计这个方法,一般程序都不会用吧. <?php wash_card(); function wash_card(){ $tmp = $arr = array( 0=>'大王',1=&

PHP 实现 JSON 数据的编码和解码操作详解

2020-04-21
本文实例讲述了PHP 实现 JSON 数据的编码和解码操作.分享给大家供大家参考,具体如下: JSON 的使用场景: 数据表一个字段需要记录多个信息,如记录关于用户的其他信息 数据传输,如:API接口返回值.Ajax中实现异步加载 配置文件,如 composer.json 包管理配置文件 在 PHP 中使用 JSON: JSON 使用最频繁的两个操作就是编码和解析数据,PHP 官方提供了以下 2 个函数实现这两个操作: json_encode() json_decode() Encoding a

PHP实现随机发放扑克牌

2020-04-20
PHP编程:用PHP实现随机发放扑克牌 描述:一副扑克牌共54张(包括大.小王),用PHP制作一发牌器,向三人随机发牌: 编辑poker.php <!DOCTYPE html> <html> <head> <title></title> </head> <body> <?php function poker(){ //建立数组保存牌组 $num = ['A','2','3','4','5','6','7','8','