gpt4 book ai didi

php - php 中的硬编码数字如何转换为数据库中的另一个数字?奇怪的

转载 作者:太空宇宙 更新时间:2023-11-03 11:10:28 25 4
gpt4 key购买 nike

我遇到了一些神秘的错误..

好的,我在 LocalHost 中使用最新版本的 MySQL。我正在使用 CodeIgniter (2.0.2)我正在尝试在模型中实现类似的功能:

function saveMyFriends($friends_list){

$this->load->library('encrypt');
foreach($friends_list as $friend){
// echo $friend['id'].' : '.utf8_decode($friend['name']).'</br>';

$query_str ="INSERT INTO sc_friends (fb_id, fb_friends_id, fb_friends_name) VALUES ( ?, ?, ?)";
$fb_id =$this->session->userdata('user_fbid');
$this->db->query($query_str, array($fb_id, $friend['id'], sha1(utf8_decode($friend['name']))));
}
return TRUE;
}

它应该将我的 Facebook 好友列表保存在数据库中,但碰巧大约 5% 的结果具有相同的 Fb_id ...这是不可能的。所以我尝试手动输入一些 friend ,我只是更改了在此处输入代码几行:

    function saveMyTwoFriends(){

$this->load->library('encrypt');
$query_str ="INSERT INTO sc_friends (fb_id, fb_friends_id, fb_friends_name) VALUES ( ?, ?, ?)";
$this->db->query($query_str, array(7518777XX, 1000028691344XX, sha1(utf8_decode('XXX XXXX'))));
return TRUE;
}

(当然,X要么是实数,要么是实名)但是再一次,在我的数据库中,当我手动输入第三个(我在示例中给你的那个)时,我有重复出现的“相同 ID”:“2147483647”

这怎么可能?谢谢:)

最佳答案

2147483647 是 32 位 PHP 中可表示的最大整数。如果您的数据库试图将更大的数字(如 100002869134477)视为整数 - 您得到的是 2147483647。您可以使用 float 或常量字符串或扩展名(如 bcmath 或 gmp),因为您需要使用更大的数字。

关于php - php 中的硬编码数字如何转换为数据库中的另一个数字?奇怪的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8979416/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com