标签:函数

使用 Rust 创建 PHP 扩展

更新: 初稿刚发布还没几个小时我意识到我的 PHP 基准测试是错的。为公平起见我已经更新了 PHP 和 Rust 的版本。你可以在 GitHub 仓库里看到変更(链接在底部)。 编写自己的php扩展函数php程序写的时间长了,自然对他所提供的功能了如指掌,他所提供的一大堆功能,真是觉得很好用,但有时候会发现php也缺少一些功能,自己总是会产生为php添加一些自定义的功能的想法。久而久之,终于今天憋

Read More

PHP实现最简单的聊天室应用

本文由码农网 – 王国峰原创翻译,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划! 做了一个QQ聊天交友网站,想加个聊天的功能,于是做完用PHP做了简单又强大的聊天室 介绍 聊天应用程序在网上非常常见。开发人员在构建这类应用程序时的选择也很多。这篇文章介绍了如何实现基于PHP-AJAX的聊天应用程序,并且不需要刷新页面就可以发送和接收消息。 1. 创建mysql数据库表:create tab

Read More

推荐12个最好的 JavaScript 图形绘制库

本文由码农网 – 小峰原创翻译,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划!   众多周知,图形和图表要比文本更具表现力和说服力。图表是数据图形化的表示,通过形象的图表来展示数据,比如条形图,折线图,饼图等等。可视化图表可以帮助开发者更容易理解复杂的数据,提高生产的效率和 Web 应用和项目的可靠性。 用PHP实现专业级的基于Web的图表,而无需深入的HTML5和JavaScript知识

Read More

在 Linux 命令行中使用和执行 PHP 代码

PHP是一个开源服务器端脚本语言,最初这三个字母代表的是“Personal Home Page”,而现在则代表的是“PHP:Hypertext Preprocessor”,它是个递归首字母缩写。它是一个跨平台脚本语言,深受C、C++和Java的影响。 作者:qinjx 原文地址:Shell脚本编程30分钟入门 什么是Shell脚本 在 Linux 命令行中运行 PHP 代码 示例 看个例子吧: #

Read More

深入理解PHP对象注入

0×00 背景 PHP对象注入是一个非常常见的漏洞,这个类型的漏洞虽然有些难以利用,但仍旧非常危险,为了理解这个漏洞,请读者具备基础的php知识。 PHP自从5.3版以来就新增了一个叫做__invoke的魔术方法,使用该方法就可以在创建实例后,直接调用对象。如下示例所示: 0×01 漏洞案例 如果你觉得这是个渣渣洞,那么请看一眼这个列表,一些被审计狗挖到过该漏洞的系统,你可以发现都是一些耳熟能详的

Read More

PHP serialize & JSON 解析

本文由码农网 – 小峰原创翻译,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划! 对于JSON(JavaScript Object Notation)大家应该不陌生,它是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition – Dec

Read More

PHP 7 的 5 大新特性

1. ?? 运算符(NULL 合并运算符) 把这个放在第一个说是因为我觉得它很有用。用法: $a = $_GET[‘a’] ?? 1; 它相当于: <?php $a = isset($_GET[‘a’]) ? $_GET[‘a’] : 1; 我们知道三元运算符是可以这样用的: $a ?: 1 但是这是建立在 $a 已经定义了的前提上。新增的 ?? 运算符可以简化判断。 ?? 运算符(NULL

Read More

PHP中的随机性——你觉得自己幸运吗?

本文由码农网 – 邱康原创翻译,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划! 本文主要分析以加密为目的的随机数生成问题。PHP 5 并未提供生成强加密随机数的简便机制,但是,PHP 7 引入了两个 CSPRNG 函数以解决该问题。系 OneAPM 工程师编译整理。 本文分析了生成用于加密的随机数的相关问题。 PHP 5没有提供一种简单的机制来生成密码学上强壮的随机数,但是PHP 7通过引

Read More

深入理解PHP对象注入

0×00 背景 PHP对象注入是一个非常常见的漏洞,这个类型的漏洞虽然有些难以利用,但仍旧非常危险,为了理解这个漏洞,请读者具备基础的php知识。 0x00 序列化函数 0×01 漏洞案例 如果你觉得这是个渣渣洞,那么请看一眼这个列表,一些被审计狗挖到过该漏洞的系统,你可以发现都是一些耳熟能详的玩意(就国外来说) WordPress 3.6.1 Magento 1.9.0.1 Joomla 3.0

Read More

那些年我们错过的魔术方法_php技巧_脚本之家

十、 __wakeup(),执行unserialize()时,先会调用这个函数 如果说 __sleep() 是白的,那么 __wakeup() 就是黑的了。 那么为什么呢? 因为: 与之相反,`unserialize()` 会检查是否存在一个 `__wakeup()` 方法。如果存在,则会先调用 `__wakeup` 方法,预先准备对象需要的资源。 作用: __wakeup() 经常用在反序列化操

Read More

PHP开发安全问题总结

简介 要提供互联网服务,当你在开发代码的时候必须时刻保持安全意识。可能大部分 PHP 脚本都对安全问题都不在意,这很大程度上是因为有大量的无经验程序员在使用这门语言。但是,没有理由让你因为对你的代码的不确定性而导致不一致的安全策略。当你在服务器上放任何涉及到钱的东西时,就有可能会有人尝试破解它。创建一个论坛程序或者任何形式的购物车,被攻击的可能性就上升到了无穷大。 php给了开发者极大的灵活性,但

Read More

PHP用mb

《PHP中的字符串、编码、UTF-8》一文中描述了一些列的基础知识,比较枯燥,现在来说点有用的——PHP 字符串处理的最佳实践,本文是“PHP、字符串、编码、UTF-8”相关知识的第二部分。先说结论——在 PHP 中的各个方面使用 UTF-8编码。 PHP用mb_string函数库处理与windows相关中文字符 PHP 语言层面是不支持 Unicode字符集的,但是可以通过 UTF-8 编码能处

Read More

PHP的autoload机制的实现解析

PHP在魔术函数__autoload()方法出现以前,如果你要在一个程序文件中实例化100个对象,那么你必须用include或者require包含进来100个类文件,或者你把这100个类定义在同一个类文件中——相信这个文件一定会非常大。但是__autoload()方法出来了,以后就不必为此大伤脑筋了,这个类会在你实例化对象之前自动加载制定的文件。 一、autoload机制概述 1. autoloa

Read More

PHP 协程实现过程详解

实现 PHP 协程需要了解的基本内容。 迭代器 迭代:根据记录的前面的元素位置信息,去访问后续的元素的过程(遍历) 可迭代对象:通过for..in..这类语句迭代读取一条数据供我们使用的对象称之为可迭代对象;一个具备iter方法的对象,就是一个可迭代对象 可迭代的本质:提供iter(可迭代对象)获取该对象提供的一个迭代器,然后通过这个迭代器来依次获取对象中的每一个数据(iter(可迭代对象)==可

Read More

PHP 内核分析:Zend 虚拟机

PHP 是一门解释型的语言。诸如 Java、Python、Ruby、Javascript 等解释型语言,我们编写的代码不会被编译成机器码运行,而是会被编译中间码运行在虚拟机(VM)上。运行 PHP 的虚拟机,称之为 Zend 虚拟机,今天我们将深入内核,探究 Zend 虚拟机运行的原理。 HHVM HHVM是什么? HHVM(HipHop VM)是Fackbook推出用于在执行PHP代码的虚拟机,

Read More

网站地图xml地图