高久峰
乘风行,无惧
文件bom头,文件bom头保存的什么东西,php读取bom头数据
<?php // 读取带BOM的文件(记事本创建a.txt,保存选择Utf8) $text = file_get_contents('./a.txt'); // 二进制的BOM头转16进制输出 echo strtoupper(bin2hex($text)); // 例如UTF8输出EFBBBFPHP本身不忽略BOM头,但是也不处理BOM头,所以大家曾经都遇到
2021-05-27
705次浏览
分类:PHP
阅读更多
php echo对象,php __toString
PHP开发者基本都是万能var_dump,很少echo对象,echo对象默认会报错.echo对象时默认会自动调用魔术方法__toString蹭点百度流量// 1.Object of class a could not be converted to string (报错) /* class a{ } $a = new a();
2021-05-21
720次浏览
分类:PHP
阅读更多
php信号量
<?php //获得信号量的方法 $execute = function () { //(1).创建IPC通信KEY $key = ftok(__FILE__, 'a'); //(2).获取一个信号量资源句柄 &nb
2021-05-18
725次浏览
分类:PHP
阅读更多
php共享内存,php共享内存的使用
(1).基本的写入(a.php)//(1.1).创建一个IPC通信专用的KEY $shm_key = ftok(__FILE__, 't'); //(1.2).创建或者打开共享内存块,创建1KB $shmop = shmop_open($shm_key, 'c', '0644', 1024); if (!$shmop) {
2021-05-18
650次浏览
分类:PHP
阅读更多
pecl自动配置php.ini
(1).告诉pecl你的php.ini在哪里,如果你也不知道,执行php --inipear config-set php_ini /www/server/php/70/etc/php.ini(2).用pecl安装扩展试试pecl install ./inotify-3.0.0.tgz(3).php -m 发现已经自动帮你配置了php.ini 可以直接使用扩展咯,不用自己加载so文件
2021-05-17
638次浏览
分类:PHP
阅读更多
php://memory伪协议的使用
php://memory伪协议,包装器将数据以文件形式来操作,而底层通过内存保存的形式。简单来说就是让你能通过操作文件的形式来读写内存,方便不?---如果你的码农生涯也在迷茫,不如忙起来,因为忙起来什么都忘记了echo sprintf("使用前内存%.2fMB" . PHP_EOL, (memory_get_usage() / 1024 / 1024)); // 读写形式申请内存协
2021-05-08
641次浏览
分类:PHP
阅读更多
php redis 分布式锁,php redis 锁
之前在写支付回调的时候,因为第三方支付的回调机制有问题,存在并发回调的情况。如果对回调的订单不加锁的话,会造成一笔订单重复处理的情况。在 Laravel 中使用基于 Redis 的锁非常简单,只需要使用 Cache::lock() 就可以创建和管理锁。更多使用方法: https://learnku.com/docs/laravel/6.x/cache/5160#atomic-locks12345678910111213141516use Illuminate\Sup
2021-04-16
1086次浏览
分类:PHP
阅读更多
php redis断线重连
在cli下运行消费数据,需要保持redis断线重连,虽然redis可以直接传递参数长连接,但是如果redis服务器异常关闭后再重启则需要重启php脚本,比较麻烦,所以写了一个redis断线重连简单版。<?php class PRedis { /** * options * @var
2021-03-16
1550次浏览
分类:PHP
阅读更多
php proc_open子进程无法请求网络
最近通过proc_open创建子进程,为了区分进程,特别在创建进程时添加了进程环境变量来标识,但是发现子进程无法正常请求网络。模拟进行复现a.php主进程:<?php $cmd = "C:/phpEnv/php/php-7.0/php.exe D:/wwwroot/learn/b.php"; $desc = []; $env = [ 'p
2021-02-04
911次浏览
分类:PHP
阅读更多
php使用register_tick_function来定位执行慢的代码
同事在优化页面加载慢的问题中将数据分离为2个接口来分别异步加载,但是实际的情况是接口1一直在查询,接口2也一直在查询,接口2一定要等接口1查询完成才能返回结果。一直以为fast-cgi进程数问题,反复设置无效,通过getmypid就能看到每次相应的进程id不同。正好我有空就想到通过register_tick_function来判断到底是卡在哪一行,一旦注册register_tick_function,php执行一行代码都会调用注册的处理函数,通过计算上一次代码执行时间和本次执行时间即可定位位置。
2021-01-28
1158次浏览
分类:PHP
阅读更多
‹‹
上一页
4
5
6
7
8
下一页
››
Top
首页
留言板
友链申请
在线工具
后台登陆
×
×