web开发

predis连接Azure Cache for Redis web开发

predis连接Azure Cache for Redis

1789 0

理论上适用所有redis的tls连接 [官方文档1](https://github.com/predis/predis/issues/535) [官方文档2](https://www.php.net/manual/en/function.stream-socket-enable-crypto.php) 最重要的配置 `'crypto_type' => STREAM_CRYPTO_METHOD_ANY_CLIENT`

PHP迭代器模式 web开发

PHP迭代器模式

1240 0

迭代器模式通俗的讲是遍历集合的成熟模式,迭代器模式的关键是将遍历集合的任务交给一个叫做迭代器的对象,它的工作时遍历并选择序列中的对象,而客户端程序员不必知道或关心该集合序列底层的结构。它的作用是使所有复杂数据结构的组件都可以使用循环来访问。 对象要实现迭代,需要使这个类实现 Iterator(SPL standard php library标准库提供),这是一个迭代器接口,实现该接口,必须实现以下方法: current(),该函数返回当前数据项 key(),该函数返回当前数据项的键或者该项在列表中的位置

PHP输出控制 web开发

PHP输出控制

1208 0

默认的PHP的echo、print之类的输出会被缓存,当缓存达到特定的大小或脚本执行结束,或强行刷新缓冲区才会发送到浏览器客户端。 `php.ini`的`outputing_buffer`字段默认是4096,表示缓存的大小,如果大于该值则会像浏览器客户端输出。但是我发现该值不管怎么改(`ini_get('outputing_buffer')`值始终为0),都不会影响输出,即不会有缓存,这里就不去研究为什么了,这里主要想说的是ob相关的函数。 有时我们需要对输出进行严格控制,比如我要输出100k的数据,而且是一次

PHP之setlocale|bindtextdomain|textdomain|gettext web开发

PHP之setlocale|bindtextdomain|textdomain|gettext

1210 0

string setlocale ( int $category , string $locale [, string $... ] ) 设置本地地区信息(地区信息是针对一个地理区域的语言、货币、时间以及其他信息。) $category可用的常量(这些常量都是php内置,结果都是int型): LC_ALL - 包括下面的所有选项 LC_COLLATE -排序次序 LC_CTYPE - 字符类别及转换(例如所有字符大写或小写) LC_MESSAGES - 系统消息格式 LC_MONETARY - 货

PHP之ReflectionClass web开发

PHP之ReflectionClass

1249 0

(PHP 5, PHP 7) ReflectionClass 类报告了一个类的有关信息。 ```php //类摘要 ReflectionClass implements Reflector { //常量 const integer IS_IMPLICIT_ABSTRACT = 16 ; const integer IS_EXPLICIT_ABSTRACT = 32 ; const integer IS_FINAL = 64 ; //属性 public $name ; //方法 public __construc

javascript四舍五入保留两位小数 web开发

javascript四舍五入保留两位小数

1071 0

JavaScript自带的Math.Round()函数返回的是四舍五入后的一个整数,无法精确到小数点后。 Number.toFixed()方法,是保留小数点后面的指定位数。例如:1.005.toFixed(2)返回的是1.00,并没有四舍五入。 这里推荐一个方法: ```js var number = 1.005; alert(Math.round(number * 100) / 100); ```

nginx报错no input file specified. web开发

nginx报错no input file specified.

157 0

##### 如果你已检查完所有的nginx常用配置,还是报这个错,那可能有一个不太常用的配置容易被忽略,那就是`open_basedir` ###### 如果你的nginx未配置open_basedir或者php.ini中未启用open_basedir,请检查项目根目录是否有一个名为.user.ini的隐藏文件 ###### open_basedir相关 ``` open_basedir限制php进程不能读取open_basedir设置的目录之外的文件 open_basedir在php.ini和nginx中都

php用curl实现远程图片下载并保存到本地 web开发

php用curl实现远程图片下载并保存到本地

1135 0

实现下载远程图片并把它保存到本地有很多方法,比如`file_get_contents`和`copy`方法,如果对方网站设置了防盗链,这些方法就不那么友好了,这里附上使用curl实现下载远程图片并保存到本地的方法。 ```php //方法一 function getImage($url,$save_dir='',$filename='',$type=0){ if(trim($url)==''){ return array('file_name'=>'','save_path'=>'','error'=>1);