一道无限极类 PHP 试题
记某次笔试碰到的一道无限极类试题,当时时间比较紧(满满六页试题),还是手写代码,所以最终写的有点错误。记不住原题了,但是要求都知道,特此记录下来!
试题
有下面一个数组:
$arr = [
'小红' => [
'张三' => null,
'李四' => [
'东东' => [
'一一' => null,
...
js使用php变量
php
<?php
$text = '文本';
$articles = [
[
'title' => '标题1',
'content' => '内容1'
],
[
'title' => '标题2',
'content' => '内容2'
]
];
?>
<script>
//字符串
var text = '<?php echo $text ?>';
console.dir(text);
//数组
var articlesJson = '<?php echo json_encode ...
PHP+MySQL网站开发全程实例
PHP+MySQL网站开发全程实例
1 PHP网站开发环境的配置
1.1 PHP 5.0开发环境与特性
1.1.1 开发环境的配置步骤
1.1.2 PHP 5.0的新特性
1.2 Apache服务器的安装与操作
1.2.1 Apache服务器的知识
1.2.2 Apache服务器的下载
1.2.3 Apache服务器的安装
1.2.4 Apache服务器的操作
1.3 PHP的安装与配置
1.3.1 PHP5软件的 ...
PHP 实现 WebSocket 协议
下面会讲解一下什么是 WebSocket,以及使用 PHP 实现 WebSocket。
WebSocket 是什么?
PHP 实例
应用场景
一、WebSocket 是什么
WebSocket 是一种网络传输协议,可在单个 TCP 连接上进行全双工通信,位于 OSI 模型的应用层。WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送 ...
php一句话木马变形技巧
一、什么是一句话木马?
一句话木马就是只需要一行代码的木马,短短一行代码,就能做到和大马相当的功能。为了绕过waf的检测,一句话木马出现了无数中变形,但本质是不变的:木马的函数执行了我们发送的命令。
二、我们如何发送命令,发送的命令如何执行?
我们可以通过 GET、POST、COOKIE这三种方式向一个网站提交数据,一 ...
RSA 加密及php实现
RSA加密简介:
RSA加密算法是最常用的非对称加密算法,CFCA在证书服务中离不了它。但是有不少新手对它不太了解。下面仅作简要介绍。RSA是第一个比较完善的公开密钥算法,它既能用于加密,也能用于数字签名。RSA以它的三个发明者Ron Rivest, Adi Shamir, Leonard Adleman的名字首字母命名,这个算法经受住了多年深入 ...
PHP依赖注入容器【pimple】
安装使用定义服务定义服务工厂定义变量保护变量修改已定义的服务扩展容器获取服务创建方法EasyWechat容器模式分析获取容器Factory做了什么?Application做了什么?ServiceContainer做了什么?Container的register做了什么?Provider到底做了什么?调用时才实例化服务类TOC
https://pimple.symfony.com/
安装
通过compose ...
file_put_contents利用技巧(php://filter协议)
Round 1
<?php
$content = '<?php exit; ?>';
$content .= $_POST['txt'];
file_put_contents($_POST['filename'], $content);
$content在开头增加了exit过程,导致即使我们成功写入一句话,也执行不了。幸运的是,这里的$_POST['filename']是可以控制协议的,我们即可使用 php://filter协议来施展魔法。
#方法一、base64 ...
centos8安装搭建php环境
window/centos双系统安装完成之后,接下来在centos上搭建php的环境。
网上也有很多安装的教程,其实都一个样,以下我直接使用yum安装。默认都是安装最新版本。
安装apache:
yum install httpd
//配置ServerName//将#ServerName www.example.com:80修改为ServerName localhost:80
vi /etc/httpd/conf/httpd.conf
//启动a ...
php源码加密方法详解
虽然PHP是世界上最好的语言,但是也有一些因为弱类型语言的安全性问题出现。WordPress历史上就出现过由于PHP本身的缺陷而造成的一些安全性问题,如CVE-2014-0166 中的cookie伪造就是利用了PHP Hash比较的缺陷。
下面为大家介绍一种源码加密技术:
加密软件(php_screw)
下载地址:http://sourceforge.net/projects/php-screw/ ...
PHP 上传文件至阿里云OSS对象存储
简述
1、阿里云开通对象存储服务 OSS 并创建Bucket
2、下载PHP SDK至框架扩展目录,点我下载
3、码上code
阿里云操作
开通对象存储服务 OSS
创建 Bucket
配置AccessKey与Access Key Secret
进入管理AccessKey页面 (可将鼠标放在右上角用户头像上,在弹出来的框中点击AccessKey 管理)
找到Bucket对应的外网访问节点
下 ...
php-webdriver:PHP控制浏览器动作, php web驱动, PHP实现自动化, php webdriver 教程, A php client for webdriver.
项目地址:https://github.com/facebook/php-webdriver
一、技术选型
php + facebook/webdriver + selenium
Selenium是一套完整的Web应用程序测试系统,它提供了一系列的操作浏览器的 API
webdriver 是 facebook 开发的一套 selenium API 的客户端组件,使用 composer 作为依赖管理工具。
二、环境搭 ...
PHP中的变量覆盖漏洞
简介
今天利用周六整理了一下 php覆盖的漏洞
榆林学院的同学可以使用协会内部实验平台进行实验操作。
1.extract()变量覆盖
1.extract()
extract() 函数从数组中将变量导入到当前的符号表。
该函数使用数组键名作为变量名,使用数组键值作为变量值。针对数组中的每个元素,将在当前符号表中创建对应的一个变量。 ...
Dockerfile PHP镜像制作
1 PHP镜像制作:
1.1 php-dockerfile
FROM centos:7
LABEL maintainer www.chenleilei.net
RUN yum install -y curl
RUN curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo && \
yum clean all
RUN yum remove oniguruma-devel -y
RUN yum remove oniguruma -y
RUN rpm -ivh https://www.che ...
nginx多版本PHP配置
场景:在单机环境下,使用一个web服务器运行多个项目,不同的项目使用不同版本的PHP。
前提:运行环境中已经安装了多个版本的PHP(本篇文章使用的是宝塔搭建的环境)。基于宝塔搭建的环境,nginx和PHP的安装目录均在/www/server/下。
首先看下nginx配置文件所在位置,nginx.conf(主配置文件)在/www/server/nginx/conf/下。各 ...
PHP session反序列化
先来了解一下关于session的一些基础知识
什么是session
在计算机中,尤其是在网络应用中,称为“会话控制”。Session 对象存储特定用户会话所需的属性及配置信息。这样,当用户在应用程序的 Web 页之间跳转时,存储在 Session 对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。当用户请求来自应用程序的 Web 页 ...
【PHP】PHP 微服务协程框架Swoft
简介
有了swoole这样强大的扩展之后,越来越多的框架都是基于swoole被开发出来,Swoft就是其中一款不错的PHP框架。Swoft 是一款基于 Swoole 原生协程的注解式框架,自带常驻内存以及 Swoole 其它功能的封装。swoft中内置了协程客户端。同时swoft里面有了很多新的概念,比如Aop等。
Swoft是基于Swoole开发的, ...
php 接口的安全实现?
https://www.cnblogs.com/afsj/p/7424320.html
PHP做APP接口时,如何保证接口的安全性?
1、当用户登录APP时,使用https协议调用后台相关接口,服务器端根据用户名和密码时生成一个access_key,并将access_key保存在session中,将生成的access_key和session_id返回给APP端。
2、APP端将接收到的access_key和session_id保存 ...
【PHP】国密算法SM4-PHP实现
代码如下
<?php
class SM4
{
const SM4_CK = [
0x00070e15, 0x1c232a31, 0x383f464d, 0x545b6269,
0x70777e85, 0x8c939aa1, 0xa8afb6bd, 0xc4cbd2d9,
0xe0e7eef5, 0xfc030a11, 0x181f262d, 0x343b4249,
0x50575e65, 0x6c737a81, 0x888f969d, 0xa4abb2b9,
0xc0c7ced5, 0xdce3 ...
PHP常用算法
一、冒泡排序
基本思想:
对需要排序的数组从后往前(逆序)进行多遍的扫描,当发现相邻的两个数值的次序与排序要求的规则不一致时,就将这两个数值进行交换。这样比较小(大)的数值就将逐渐从后面向前面移动。
//代码利用了双循环来实现排序。 外循环用来控制所有轮次,内循环用来控制每一轮的排序
for ($i = 0; $i < ...