V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  GTim  ›  全部回复第 43 页 / 共 74 页
回复总数  1465
1 ... 39  40  41  42  43  44  45  46  47  48 ... 74  
2019-03-21 11:35:44 +08:00
回复了 Junjunya 创建的主题 Go 编程语言 有啥好用的 phpserialize 函数么
@Junjunya 我看了下 github 上的,没有你要的,所以才来写文告知你详情

即使你自己实现,也是要先实现 map[string]interface{} 的。然后再判断是否数组
2019-03-21 11:32:34 +08:00
回复了 xianxiaobo 创建的主题 程序员 一个程序员从现在起工作十年后,工资一般是多少?
@jmc891205 1.3 的路过
2019-03-21 11:25:42 +08:00
回复了 Junjunya 创建的主题 Go 编程语言 有啥好用的 phpserialize 函数么
@GTim 接上

为什么 其它语言实现的几乎都是 Map,是因为 serialize 序列化后的结果,数组和哈希表是没啥区别的,唯一的区别就是键的类型是否有 i 或 s.

1. 只要出现 s,那么必须是 map
2. 全部都是 i , 如果最后的每个键都自增,那么就是 array
3. 否则,还是 map

<?php

$person = [1,2,3,4,6];
echo serialize($person);
echo "\n\n";

$person = [1, 10 => 2,3,4,6];
echo serialize($person);
echo "\n\n";

$person = [
'name' => 'yufei',
'age' => 28,
'address' => 'dd'
];

echo serialize($person);
echo "\n\n";


$person = [
'88',
'name' => 'yufei',
'age' => 28,
'address' => 'dd',
'99'
];

echo serialize($person);
echo "\n\n";


$person = [[
'name' => 'yufei',
'age' => 28,
'address' => 'dd'
],
[
'name' => 'yufei',
'age' => 28,
'address' => 'dd'
]
];

echo serialize($person);
echo "\n\n";


结果如下


a:5:{i:0;i:1;i:1;i:2;i:2;i:3;i:3;i:4;i:4;i:6;}

a:5:{i:0;i:1;i:10;i:2;i:11;i:3;i:12;i:4;i:13;i:6;}

a:3:{s:4:"name";s:5:"yufei";s:3:"age";i:28;s:7:"address";s:2:"dd";}

a:5:{i:0;s:2:"88";s:4:"name";s:5:"yufei";s:3:"age";i:28;s:7:"address";s:2:"dd";i:1;s:2:"99";}

a:2:{i:0;a:3:{s:4:"name";s:5:"yufei";s:3:"age";i:28;s:7:"address";s:2:"dd";}i:1;a:3:{s:4:"name";s:5:"yufei";s:3:"age";i:28;s:7:"address";s:2:"dd";}}
2019-03-21 11:18:22 +08:00
回复了 Junjunya 创建的主题 Go 编程语言 有啥好用的 phpserialize 函数么
目前没发现,提供你一个 hook 方法,生成了 map[string]interface{} 后,判断 key 是不是连续的整数字符串即可

PHP serialize 数组

[1,2,3,4,6]

序列化后生成的数据为

a:5:{i:0;i:1;i:1;i:2;i:2;i:3;i:3;i:4;i:4;i:6;}


只要是数组,下标一定从 0 开始,结尾一定是长度 -1,而且连续
2019-03-21 09:30:06 +08:00
回复了 coderabbit 创建的主题 程序员 一个称重收银台要具备哪些开发知识?
有机器推荐吗?我也想搞一个
2019-03-21 08:09:52 +08:00
回复了 nightstart 创建的主题 Python Python aiomysql 我遇到的异常情况
@pynix 同意楼上,你用同步思维的方式来写异步代码,insert 还没执行完的时候,select 就开始执行了,那就没数据了
2019-03-15 21:49:07 +08:00
回复了 GTim 创建的主题 App.net ASP.NET Core 2.1 基础教程终于完成了,内附网址
@xnmktsxt 如果你英文好,其实官方文档是更好的选择。中文的官方文档也不错
@wemore 这种是最快的转语言方法了
老板说,建国,我们要做一个免签约支付,于是,去研究了下 android

老板说,我们要写一个 EOS 的合约,于是去研究了下区块链

老板说,把这个 H5 改造成 App 于是去研究了下 React Native


我几乎都没拒绝,没说我不会,于是,变成了全栈。

说白了,就是主动揽活
2019-03-06 21:21:39 +08:00
回复了 qq292382270 创建的主题 程序员 我是不是看错了,在微信支付开发文档里面看到菠菜地址..
@rain0002009 老司机
2019-03-06 21:15:16 +08:00
回复了 noble4cc 创建的主题 Java 现在用 mybatis 都不用 xml 了吗
用啊用啊,注解形式那是简单的还可以,复杂的工程,改一个代码会死人
@sunjourney 返回原来的字符串就破坏了返回值类型了。一个是 Time 结构,一个是 string 类型

在强类型语言里,这是不符合约定的。

只有弱类型的语言,才可以这么随心所欲

不过,真要是返回 String,在若类型语言里,也会被同事打的
@sunjourney 解析出错就没有原值啊,原值要么 nil 要么是 1970-01-01 00:00:00,后者肯定不合适,前值就是现在返回的,只不过多返回了为啊解析出错而已
@sunjourney 时间对象的原值是? nil ?
2019-03-06 08:04:35 +08:00
回复了 GTim 创建的主题 App.net ASP.NET Core 2.1 基础教程终于完成了,内附网址
@215503346 已经修复了
time.Parse 有 error 是因为参数只有那么几种,你多给了就会报错

Format 不会报错也是参数就那么几种,没有就忽略不处理即可
2019-03-05 17:38:49 +08:00
回复了 GTim 创建的主题 问与答 对接过银联的二维码的亲么?有一个问题
@wxcszh 谢谢
2019-03-05 16:59:33 +08:00
回复了 GTim 创建的主题 问与答 对接过银联的二维码的亲么?有一个问题
@julyclyde 那奇怪了,工行的扫建行的收款码会提示交易失败的
2019-03-05 16:58:48 +08:00
回复了 GTim 创建的主题 问与答 对接过银联的二维码的亲么?有一个问题
@yingfengi 看不见的地方,银联是大头
2019-03-05 10:25:41 +08:00
回复了 GTim 创建的主题 App.net ASP.NET Core 2.1 基础教程终于完成了,内附网址
@215503346 谢谢提醒,回去就修复
1 ... 39  40  41  42  43  44  45  46  47  48 ... 74  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1295 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 27ms · UTC 23:23 · PVG 07:23 · LAX 15:23 · JFK 18:23
Developed with CodeLauncher
♥ Do have faith in what you're doing.