V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  lizheming  ›  全部回复第 38 页 / 共 70 页
回复总数  1384
1 ... 34  35  36  37  38  39  40  41  42  43 ... 70  
2014-05-16 17:47:38 +08:00
回复了 raincious 创建的主题 PHP 貌似,被 isset 坑了又。
@raincious 为啥是被你掰的..我51楼的第一点不就是这么说的么o(╯□╰)o……肯定是会转换的啊,一级一级的获取在获取 $str['check'] 这个的时候就会被转换成 $str[0] 获取啊..有什么问题?是的,我的意思就是变成了 $str[0]['f']
嗯,是好费劲..还要自己去找楼号,就不能给楼号来个更简单的锚点然后自动解析锚点么OwQ。。
好了大概误会解除了...我也谢谢你,查文档我也学习到了好多OwQ
2014-05-16 16:45:17 +08:00
回复了 raincious 创建的主题 PHP 貌似,被 isset 坑了又。
@raincious 你居然还@我了..真是不回不舒服斯基啊…囧... 没有什么一致不一致的,var_dump和isset的思路都是一样的,多为数组都得逐级获取才能得到值。但是isset只是判断值是否存在而已,如果硬要说特别就只有这一点特别而已,邮件上也是这么说的。而且这段”So, $string['check'] is effectively $string[0], which is "t"; so
$string['check'][0] is $string[0][0], which is set and evaluates
to "t".“就是我讲的思路(你引号中说的不是的那部分)。没错,是一层一层的取出的,但是取到最后面就只有最后一个key了啊..跟我说的判断最后一个key有什么区别么(´Д`)..
你倒数第二段讲的不也还是我说么一级一级的获取然后去顶最后那个key是否有(´Д`)
2014-05-16 15:41:15 +08:00
回复了 raincious 创建的主题 PHP 貌似,被 isset 坑了又。
8楼的答案最终给出的也没有明确,也是用或许回答的,而且还转到了我的楼上来了。而且我回答的时候是针对你7楼说的“跟这个没关系”来回答的,就是想强调,其实是有关系的。

20楼的时候我还没明白您是在问Why这种高层次问题,我是在22楼你“吐槽”我的时候我才明白的,再此我先为我的低智商道歉一下。

从你以上的回答中我并没有感觉到你认为我说的是一个对的答案,而且回答中的示例跟我想的步骤也有不同,所以我在回复中一再进行“疏导”,并且强调了如果您明白了的话就当我是在放屁好了。结果您还在和我讨论...我以为你还没明白..我当然就只能陪着您讨论下去了..另外说一句,32楼我说的“isset()的问题”是说isset()为什么这样做的问题,我以为你能明白的……

你说的原因不就是我讲的啊..我并没有说没法判断数据类型(我哪里有表达这个意思啊(´Д`))..我只是想强调isset()只是转换了前面的一部分获取到最终一个数组后检查最后一个key是否存在,但是因为key是字符串的,就直接返回false了啊... 果然对我的回答的理解不一致才导致了我们这么累么....

是的,你这句话让我出奇的愤怒了,什么叫做没办法回答?(╯‵□′)╯︵┻━┻ 我这就回答给你看:

1.首先要强申一下isset()只是判断一个变量是否存在的,不管什么时候也不会报错的,比如 http://3v4l.org/Ao6GI 很抱歉之前没有认识到这一点,给我的解释上造成了一些误会。只有在取值 var_dump()或者echo的时候才会报错。

2. 关于为啥会报错什么的,没必要去查源码了,laruence大大在博客上已经讲得很清楚了,http://www.laruence.com/2011/12/19/2409.html。总结来说就是为了兼容。

3.关于怎么去isset()的过程就是我讲得那样,本回复的第四段也是在说这个。你的最后一次回复基本没有说错,除了这句”isset($string['check'])能返回false因为它有代码段来专门进行这项检查,扫描到'check'是string直接返回了false。“是不完全正确的。isset()就是判断最后一个而已..

4.如果你真的想要搞清楚PHP为啥怎么运作的话可以试试vld这个扩展http://pecl.php.net/package/vld,可以逐步输出PHP的运行过程,能了解PHP的运行过程。

好啦,我发现我现在连为什么也搞清楚了,你搞没搞清楚就随意吧。如果你要回答的话请别@我了,我是一看有@不回就不舒服斯基的人,这样可能就没完没了了T_T,亲我们就再也不见了吧....真蛋疼...
2014-05-16 10:49:59 +08:00
回复了 amoblin 创建的主题 程序员 rm -rf ~/a/b/c 时误删了文件怎么办?
@amoblin 他们说Github是保存一个月的,应该不会这么快吧...不过我之前用新浪微博登陆的,总是频繁要求登陆,后来我就怒了..自从用了SF自己的登陆后,登陆什么的再也不用烦恼了(´Д`)
2014-05-16 10:32:39 +08:00
回复了 amoblin 创建的主题 程序员 rm -rf ~/a/b/c 时误删了文件怎么办?
@amoblin (´Д`)为啥我一直都没有登陆过呢..甚至跨电脑跨系统好像都没有登陆过..不过那个模糊效果实在是好讨厌,我也不是很喜欢。
2014-05-16 10:30:55 +08:00
回复了 raincious 创建的主题 PHP 貌似,被 isset 坑了又。
@raincious ...不懂您第一句的DR和R是什么意思(´Д`),zend的源码也看不懂,好忧桑..
2014-05-15 23:38:00 +08:00
回复了 amoblin 创建的主题 程序员 rm -rf ~/a/b/c 时误删了文件怎么办?
http://segmentfault.com/q/1010000000438405 身为SF用户应该先去SF上搜索一下啊..
p.s.推荐那个Trash的方案。
2014-05-15 22:26:40 +08:00
回复了 raincious 创建的主题 PHP 貌似,被 isset 坑了又。
好吧,我也来结下帖,看到你这个最后,我最后真的是想骂人了。
最开始我看您的帖子内容是“猜测xxxxx”并没有给出PHP是怎么在这个代码中工作的,然后我就上手册查了查帮你找到了一个确实的工作机理,然后你就说我的内容各种不对不对什么的...

现在可以确定的是,工作机理是我说的这样的这样,我的解释并没有什么问题。

然后在22楼和23楼的时候我已经明白了您是想要探讨更高深的东西,想要知道为什么这么做,并在25楼的时候明确告知关于“为什么这么做”这个问题的答案我不知道并试图停止解释工作机理这个过程。

结果您在26楼的时候又把我给扯进去了,之后我就一直在试图想说明“我说的是PHP的工作机理的一个合理解释,并且是一个可以自圆其说的解释,是没有问题的,以及我并不懂PHP的工作机理为什么是这样的,希望您在邮件组中能得到更完美的答案,并贴于此告知大家”,结果我也不知道您为什么就是各种吐槽我这不对那不对什么的..跟您扯这么多,我真的好忧桑好么!
2014-05-15 21:05:10 +08:00
回复了 xieranmaya 创建的主题 程序员 被百度云坑了,发一它不会同步.git 文件夹……
@hging 我只是来说一句 dropbox 是传送的..over...
2014-05-14 22:22:13 +08:00
回复了 he6736 创建的主题 程序员 新人求助,帝都求个 ios 开发师父,价格由师父开~
@he6736 ╮(╯▽╰)╭..这个技能点除了填饱肚子只能拿来卖萌了吧T_T
2014-05-14 22:13:00 +08:00
回复了 he6736 创建的主题 程序员 新人求助,帝都求个 ios 开发师父,价格由师父开~
哈哈哈最后一句好萌..同技能槽的过来支持一下!
2014-05-14 21:51:31 +08:00
回复了 raincious 创建的主题 PHP 貌似,被 isset 坑了又。
@raincious 写了这么长完全不知道你要吐槽什么。”直接因为$str['check']这个根本不合法而直接返回false啊“这个不在我的模式范围内所以我不多做讨论。举的例子也是bug,文件名分明要转成大写再做判断好么,而且函数名就说明了人家就是用来获取文件内容的,非得拿人家来做判断文件是否存在是不是稍微过分了点?...
其实我早就明白你是在说要PHP为什么这么做,而我一直在强调的是我在说的是PHP怎么这么做,详情见23,25,32,35,37楼...我说到邮件组和其他人这部分的话的意思都是说我只是在解释PHP怎么这么做的,不明白为什么这么做。
问题在于每次我这么说完之后你就把我扯到怎么做这个问题上,等我把怎么做这个问题解释清楚之后你又给我扯回到为什么这么做上头去……WTF!!!!
2014-05-14 20:09:58 +08:00
回复了 raincious 创建的主题 PHP 貌似,被 isset 坑了又。
@raincious 我真没觉得你明白我29楼在说什么,为什么要转换我不是说了么“不把$string['check']转换过来的话 isset()怎么知道是从哪个 数组/字符串 里面isset呢?”,而且我41楼又重复说了一次“因为只有得到 $str['check']是什么才能确定是否有0键”...
比如说
$a = array( array=>(1,2) );
var_dump( isset($a[0][3]) );

isset()是先获取到了 $a[0] 为 array(1,2) 之后然后再在这里面检查 3 这个键是否存在。这样说应该好理解了吧╮(╯▽╰)╭...

p.s.其实我也不想要重复说啊..因为真的很累啊....但是...真的就只有这点东西嘛...
2014-05-14 18:07:49 +08:00
回复了 raincious 创建的主题 PHP 貌似,被 isset 坑了又。
@raincious 29楼不是说了很清楚么.. isset($str['check'])的中文意思是检查$str 数组/字符串 内是否存在 'check' 键,isset($str['check'][0])的意思是检查 $str['check'] 这个 数组/字符串 内是否存在 0 键.. 所以$str['check']会先转换,因为只有得到 $str['check']是什么才能确定是否有0键... isset($str['f']['f'])其实也是一样的,检测$str['f']中是否有 'f' 键,先转换$str['f']所以会有报错,但是'f'是字符串所以直接返回false了。
2014-05-14 16:52:57 +08:00
回复了 raincious 创建的主题 PHP 貌似,被 isset 坑了又。
@raincious 如果是基于官方手册给出的说明”检查字符的非数字偏移量将会返回 FALSE“,我觉得是可以理解的,我的理解在29楼...
2014-05-14 16:37:27 +08:00
回复了 raincious 创建的主题 PHP 貌似,被 isset 坑了又。
@raincious 原来你的感谢加分是这个意思?我一直以为是“另外感谢你一直回复,我散点分给你哈。”这个意思呢…… 5.4以下就不在我的讨论范围了,因为手册上明显的说着是>=5.4加入的。如果只是讨论为什么会有这个结果我想我已经说的很清楚了,如果是讨论PHP为什么要这么做的话我也不清楚,坐等你把官方的消息反馈给我:)。
我也不太想说下去了,思路我已经捋清楚了还在这里饶口舌真是累。
2014-05-14 16:10:44 +08:00
回复了 raincious 创建的主题 PHP 貌似,被 isset 坑了又。
@raincious 12楼说的是PHP怎么"运行"isset()的,并没有说明isset()为什么要这么去做,关于怎么"运行"在5楼的时候我就已经明白了:),以及坐等append。
2014-05-14 16:10:34 +08:00
回复了 raincious 创建的主题 PHP 貌似,被 isset 坑了又。
@raincious 12楼说的是PHP怎么"运行"isset()的,并没有说明isset()为什么要这么去做,关于怎么"运行"在5楼的时候我就已经名表了:),以及坐等append。
2014-05-14 14:42:43 +08:00
回复了 raincious 创建的主题 PHP 貌似,被 isset 坑了又。
@raincious 关于isset()的问题我我帮助不了你太多了,我只是来理清楚为什么出现这种结果的。更高一层的东西还得由其他人解决,希望你能得到个好结果:)
2014-05-14 12:01:19 +08:00
回复了 raincious 创建的主题 PHP 貌似,被 isset 坑了又。
@raincious
..已经完全不懂你在说什么了..我的理解是
$string = 'this';
var_dump( isset($string['check'][1] );
这句话中 $string['check'] 因为isset只判断最后一个键 && $string是字符串 && 'check'是一个非整型键 被强制转换成了 $string[0] 也就是 't',然后实际上执行的就是 isset( 't'[1] )了,这里报false不是很正常的么,总共就一个字符串哪里来的1?

你说的两种可能就是一个思路上的东西,并不存在两种的情况...不把$string['check']转换过来的话 isset()怎么知道是从哪个 数组/字符串 里面isset呢?
1 ... 34  35  36  37  38  39  40  41  42  43 ... 70  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   944 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 23ms · UTC 21:16 · PVG 05:16 · LAX 14:16 · JFK 17:16
Developed with CodeLauncher
♥ Do have faith in what you're doing.