Oct062022
zephir 代码转换,php 代码如何自动转化为 zephir 代码 ?
在zephir的初步编写尝试后,大家就会发现,其实很多事情都和想象的不一样。在php中,很顺理成章的语句,在zephir里面都是不能顺利解析的。所以,你可能需要一个php代码,自动转换成zephir代码的工具。苏南大叔在本文中,推荐一款自动代码转换的神器,叫做php-to-zephir。有了这款代码转换神器后,编写zephir的过程就会简单很多了。
本文测试环境为:
mac10.14.1 (18B75),php7.2,zephir0...阅读全文
抢沙发
Oct042022
PHP代理模式的实现
代理模式是把难复制的、占资源多的、远程速度慢的对象。各自对应一个代理对象,被代理后进行本地的操作。
<?php
class Printer{
public function doPrint(){
echo "I can Print!";
}
}
class TakePhoto{
private $printer;
public function __construct($printer){
$this->printer=$printer;
}
public function doPhoto(){
...阅读全文
Oct032022
如何解决PHP中常见的Fatal error: Uncaught exception错误?
PHP作为一种常用的编程语言,经常会遇到各种错误和异常。其中一个常见的错误就是“Fatal error: Uncaught exception”。这个错误通常是由于代码中的异常未被捕获而导致的。在本文中,我们将介绍如何解决这个常见的错误。
原因分析
当PHP代码执行过程中遇到异常时,如果该异常没有被有效地捕获并处理,就会触发“Fatal error: Uncaught exception”错误。这个错误会导致代码中断执行,并返回一...阅读全文
Sep192022
Sep132022
PHP7性能加速-开启Opcache
PHP属于解释型语言,在执行代码过程中,翻译器并不产生目标机器代码,而是产生易于执行的中间代码,这种中间代码每执行一次就翻译一次,通常会导致执行效率较低,而在PHP7中可以直接开启Opcache来进行性能优化和加速。
PHP 5.5+版本以上的,可以使用PHP自带的opcache开启性能加速(默认是关闭的),PHP5.5之后opcache可以直接--enable-opcache。对于PHP 5.5以下版本的,可以使用APC来进行...阅读全文
Sep132022
php swoole 使用多进程爬取网址示例
php swoole 使用多进程爬取网址示例。
<?php
$s_time = time();
echo '开始时间:' . date('H:i:s', $s_time) . PHP_EOL;
//进程数组
$worker = [];
//模拟地址
$curl = [
'https://www.baidu.com/',
'https://www.phpernote.com/',
'https://www.taobao.com/',
'https://www.jd.com/',
'https://www.163.com'
];
//模拟爬虫
function curldeta($curl_arr) {
...阅读全文
Sep132022
jquery+html+php 实现Ajax无刷新文件上传
以下内容所讲的方法是通过jquery的插件实现,纯jquery原生的实现方法请参考:
使用jquery ajax实现文件上传
利用 php+jquery+html 实现 ajax 无刷新文件上传。这里主要用到了一款 jquery 插件(也可称作 ajax 文件上传组件)ajaxfileupload。这个插件实际上是采用了 iframe 文件上传的原理,即动态的再页面里嵌入了一个IFRAME表单,然后在IFRAME使用原生的POST表单提交数据。下面以做一个...阅读全文
Sep132022
使用jquery ajax实现文件上传
使用jquery ajax实现文件上传,只贴关键代码。
html 代码:
<input type="file" id="phpernote_pop_uploadfile" multiple />
javascript 代码:
$('body').on('change', '#phpernote_pop_uploadfile', function () {
var file = new FormData;
file.append('file', $('#phpernote_pop_uploadfile')[0].files[0]);
$.ajax({
url: 'http://localhost:8051/',
...阅读全文
Aug292022
PHP易混淆知识整理笔记
php经常会混淆的知识点有很多,例如include与require的区别;require_once()和include_once()语句等一些列的知识点,感觉这方面欠缺的朋友可以参考一下
1.echo和print的区别
PHP中echo和print的功能基本相同(输出),但是两者之间还是有细微差别的。echo输出后没有返回值,但print有返回值,当其执行失败时返回flase。因此可以作为一个普通函数来使用,例如执行下面的代码后变量$r的...阅读全文
Aug282022
php gpc开关设置,PHP magic_quotes_gpc的详细说明
php中的magic_quotes_gpc是配置在php.ini中的,他的作用类似addslashes(),就是对输入的字符创中的字符进行转义处理。他可以对$_POST、$__GET以及进行数据库操作的sql进行转义处理,防止sql注入。
对于PHP magic_quotes_gpc=on的情况,
我们可以不对输入和输出数据库的字符串数据作
addslashes()和stripslashes()的操作,数据也会正常显示。
如果此时你对输入的数据作了addslashes()处理,
...阅读全文