开发者社区> 问答> 正文

多用户同时请求一个PHP文件有可能得到相同的返回值吗?

如题,代码 如下 在多用户同时请求该文件时 会出现两个用户得到的返回值相同吗?
场景 该文是判断用户消耗的积分或者道具的数据 在数据表中相应 字段存储用户的积分或者道具数量,每次用户请求该文件 通过用户ID 进行查询用户的积分或者道具 之后进行对比 通过之后做其他操作

mysql_connect("localhost", "mysql_user", "mysql_password");
mysql_select_db("user");
$consume_props_count = 10;
$select = 'SELECT count from user where userid=123456';
$query = mysql_query($select);
$row = mysql_fetch_assoc($query);
if ($row['count'] < $consume_props_count) {
return false;
}

求大神赐教

展开
收起
落地花开啦 2016-06-17 15:05:24 3203 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    假设其他程序不会修改代码中的变量或mysql中的数据,那么一定会返回相同值。
    1、consume_props_count变量每次都是10且不做修改;
    2、查询语句一样
    所以一个用户请求多次或多个用户同时请求其结果都是一样的。

    update

    还是无法从代码中看出什么。
    你的返回值是false或不返回,那么肯定会有一部分用户得到的是false。

    猜测你可能是想问多个请求同时到达会不会产生共享内存从而相互影响,PHP请求之间的资源是隔离开的,不同请求之间不能共享内存。请求间共享数据的方法就是从第三方读写数据(如MYSQL)。

    2019-07-17 19:42:49
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
PHP 2017.北京 全球开发者大会——高可用的PHP 立即下载
PHP安全开发:从白帽角度做安全 立即下载
复杂PHP系统性能瓶颈排查及优化 立即下载