V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  onion83  ›  全部回复第 18 页 / 共 31 页
回复总数  613
1 ... 14  15  16  17  18  19  20  21  22  23 ... 31  
2018-05-09 13:04:50 +08:00
回复了 Reign 创建的主题 新手求助 还是想不通, file_get_contents 到底比 curl 弱在哪里?
作为一个“万金油”函数,PHP 一行代码 file_get(put)_contents() 解决了文件 /流的读写问题。屏蔽了很多什么 buffer,读写模式之类的细节,这是世界上最好的语言的精髓所在,至今无敌,不服来辩。

如果还是希望控制更多细节,还可以使用 stream_wrapper_register() 来实现自己对 http 协议的读取,既然称之为 “神药” 我觉得玩得 686 还得看自己。
2018-05-09 12:49:46 +08:00
回复了 Reign 创建的主题 新手求助 还是想不通, file_get_contents 到底比 curl 弱在哪里?
php 的 fopen / file_[get/put]_conntent 系列函数只是一个 wrappers,对 php 而言 http, 标准文件, 标准输入都是 stream 我个人理解是类似一个接口,本身并不实现任何功能,底层是调用了 php_stream_xx 的相关函数实现,如果非得说慢,最多是做一次字符串的内存拷贝.

如果强制要求使用 curl ( libcurl )来作为 http(s) 的 wrappers 来存储数据 ,编译 php 的时候加个 --with-curlwrappers 即可。第三个参数 context 可以作为 选项传到到相关函数实现中,但是有可能不够完整。

```
/* {{{ proto string file_get_contents(string filename [, bool use_include_path [, resource context [, int offset [, int maxlen]]]])
Read the entire file into a string */
PHP_FUNCTION(file_get_contents)
{
char *filename;
size_t filename_len;
zend_bool use_include_path = 0;
php_stream *stream;
zend_long offset = 0;
zend_long maxlen = (ssize_t) PHP_STREAM_COPY_ALL;
zval *zcontext = NULL;
php_stream_context *context = NULL;
zend_string *contents;

/* Parse arguments */
ZEND_PARSE_PARAMETERS_START(1, 5)
Z_PARAM_PATH(filename, filename_len)
Z_PARAM_OPTIONAL
Z_PARAM_BOOL(use_include_path)
Z_PARAM_RESOURCE_EX(zcontext, 1, 0)
Z_PARAM_LONG(offset)
Z_PARAM_LONG(maxlen)
ZEND_PARSE_PARAMETERS_END();

if (ZEND_NUM_ARGS() == 5 && maxlen < 0) {
php_error_docref(NULL, E_WARNING, "length must be greater than or equal to zero");
RETURN_FALSE;
}

context = php_stream_context_from_zval(zcontext, 0);

stream = php_stream_open_wrapper_ex(filename, "rb",
(use_include_path ? USE_PATH : 0) | REPORT_ERRORS,
NULL, context);
if (!stream) {
RETURN_FALSE;
}

if (offset != 0 && php_stream_seek(stream, offset, ((offset > 0) ? SEEK_SET : SEEK_END)) < 0) {
php_error_docref(NULL, E_WARNING, "Failed to seek to position " ZEND_LONG_FMT " in the stream", offset);
php_stream_close(stream);
RETURN_FALSE;
}

if (maxlen > INT_MAX) {
php_error_docref(NULL, E_WARNING, "maxlen truncated from " ZEND_LONG_FMT " to %d bytes", maxlen, INT_MAX);
maxlen = INT_MAX;
}
if ((contents = php_stream_copy_to_mem(stream, maxlen, 0)) != NULL) {
RETVAL_STR(contents);
} else {
RETVAL_EMPTY_STRING();
}

php_stream_close(stream);
}
```

http://php.net/manual/en/wrappers.php
http://php.net/manual/en/context.curl.php
2018-05-07 11:04:57 +08:00
回复了 xjy0454 创建的主题 NAS 家里的 NAS 被人盯上了
如果有公网 IP 的话,我做过蜜罐统计,平均一天有 1000+的 IP 做公网端口扫描和渗透尝试,所以见惯不怪吧。
广西电信 200M/50M
深圳电信 100M/20M 200M/30M
2018-04-27 11:26:17 +08:00
回复了 LokiSharp 创建的主题 问与答 V2 有微软的人么?你们的更新暂停是假的么?
https://i.imgur.com/5CRN3Tz.jpg

用 U 盘 装 win2go 最近一开机就蓝屏就弹这个,我点更新他又说不能在 U 盘上安装,于是陷入死循环。

Windows 10 是我自用 Win 3.2 以来见过最垃圾,对用户干扰最大,且难维护、难使用的系统.
10.0.0.0/8
100.64.0.0/10
172.16.0.0/12
192.168.0.0/16

子网掩码一开始可以压缩得很小,之后再慢慢放开。

一般而言:

IDC 环境用 10.x,
企业办公网用 172.x
VPN 用 192.x
2018-04-23 09:48:10 +08:00
回复了 ZiCraft 创建的主题 PHP PHP 新手写了一段代码,求大佬帮忙看一下。
mysql 相关的日期函数了解一下: https://my.oschina.net/u/1024107/blog/748344

可以数据库直出结果.
2018-04-18 11:38:52 +08:00
回复了 li24361 创建的主题 程序员 公司接触不到高并发,高可用的东西,如何自己提升?
身在福中不知福:)
2018-04-18 11:33:37 +08:00
回复了 c466934322 创建的主题 程序员 如何说服团队成员统一规范?
最佳实践是:用技术去约束规范

每个人背景不一样,甚至对文字的理解都不一样,你的文字规范、口头劝说对别人只有指导意义,而没有强制意义。

- 代码层面:在代码提交阶段,服务器对代码做前置检查,不通过就不能提交。( Mess Detector 了解一下)
包括且不限于:语法检查、文件编码约束、禁止 tab、函数 /方法命名检测,未使用函数、变量检查,自动化测试等

- 数据层面:分离 DAO 层,无法直连数据库,只能通过中间件、API 取数据

- 产品层面:少写代码,能自动生成尽量自动生成。高度抽象思考现有业务,能做后台做后台,通过配置驱动业务
2018-04-13 11:09:23 +08:00
回复了 hotsun168 创建的主题 程序员 为了提升操作流畅度, USB 3.0 外接 SSD 做系统盘是否可行?
可行,好的 SLC U 盘 读写速度可以到达 400 M 以上,体验不输中低端 SATA SSD,做系统盘完全没有问题,eVtran 品牌可以了解一下。
2018-04-12 19:37:00 +08:00
回复了 xuxueli 创建的主题 Java XXL-CONF v1.4.1 发布,分布式配置管理平台
360 qconf 了解一下?
2018-04-07 14:57:37 +08:00
回复了 fyooo 创建的主题 问与答 3 米长、2.7 米宽的卧室买什么电视合适?
卧室电视 觉得还是不要太大,否则就有压迫感 42 寸差不多。角度问题好解决,买个旋转支架即可。
2018-04-03 21:37:43 +08:00
回复了 moonfy 创建的主题 问与答 已有域名,如何低成本批量注册邮箱
mailgun 路由规则了解一下
2018-04-03 16:52:48 +08:00
回复了 epiman 创建的主题 问与答 IPTV 会导致网速变慢吗
iptv 走的是 vlan 和数据业务不在一个承载网上,所以是不影响网速的。一般光猫会将端口写死,熟悉 onu 设备的话可以自己改过来。
再试了一次,发现我的测试有点问题,iOS 11 开始,在控制中心点 图标关闭蓝牙,其实并没有真的关闭,只是处于 [半关状态] ,但是居然是可以继续通讯的,所以上面的测试关闭蓝牙的地方应为 FAIL。

所以,可以推导出 “通用粘贴板” 的最小环境应该是 “打开蓝牙并配对过设备”
刚才又做了几个场景测试,测试跨设备粘贴:

不同 WIFI + 关闭 4G + 关闭蓝牙 | OK
不同 WIFI + 关闭 4G + 打开蓝牙 | OK

相同 WIFI + 关闭 4G + 关闭蓝牙 | OK
相同 WIFI + 关闭 4G + 打开蓝牙 | OK

关闭 WIFI + 开启 4G + 打开蓝牙 | OK
关闭 WIFI + 关闭 4G + 打开蓝牙 | OK

关闭 WIFI + 关闭 4G + 关闭蓝牙 + macbook 使用数据线连接 iPhone (打开共享网络) | FAIL
-----------------------------

结论:只要让 mac 通过 4G、WIFI、蓝牙,任意方式“找到”你的 iPhone,都能跨设备使用 “通用粘贴板” 。
这两天升级完 OSX(10.13.4) IOS (11.3) 跨设备粘贴妙出,丝般流畅,再也不转棒棒糖了。

环境:两端都开蓝牙、
连接相同 WIFI
iCloud 登录同账号
iCloud 已经同意转移到云上贵州
2018-03-30 17:32:09 +08:00
回复了 moack 创建的主题 分享发现 cloudflare 公共 dns 1.1.1.1
9.9.9.9
1 ... 14  15  16  17  18  19  20  21  22  23 ... 31  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   879 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 37ms · UTC 20:02 · PVG 04:02 · LAX 12:02 · JFK 15:02
Developed with CodeLauncher
♥ Do have faith in what you're doing.