gpt4 book ai didi

PHP 和 Laravel : ConvertingVARCHAR value to FLOAT in query

转载 作者:行者123 更新时间:2023-11-29 03:30:54 25 4
gpt4 key购买 nike

我在表中存储了两个字段latlong,这些列的数据类型为VARCHAR

现在在 Laravel 中我有以下变量:

$ne_lat = 21.405122657695813;
$ne_lng = -102.32061363281252;
$sw_lat = 19.984311565790197;
$sw_lng = -104.19652916015627;

我想在我的查询中使用它来将它与我的表数据进行比较,如下所示:

$agencies = DB::table('users')
->whereRaw('lat < ? AND lat > ? AND long < ? AND long > ?',[$ne_lat,$sw_lat,$ne_lng,$sw_lng])

我试过像这样转换它:

$agencies = DB::table('users')
->whereRaw('CAST(lat AS FLOAT) < ? AND CAST(lat AS FLOAT) > ? AND CAST(long AS FLOAT) < ? AND CAST(long AS FLOAT) > ?',[$ne_lat,$sw_lat,$ne_lng,$sw_lng])

但它不显示任何结果(我没有收到任何错误消息,因为查询显示在 json 中)它只是不显示。我的查询有什么问题?

提前致谢

最佳答案

(int)(your value);

或者你可以使用:

intval(string)

这里是一些示例:

<?php
echo intval(42); // 42
echo intval(4.2); // 4
echo intval('42'); // 42
echo intval('+42'); // 42
echo intval('-42'); // -42
echo intval(042); // 34
echo intval('042'); // 42
echo intval(1e10); // 1410065408
echo intval('1e10'); // 1
echo intval(0x1A); // 26
echo intval(42000000); // 42000000
echo intval(420000000000000000000); // 0
echo intval('420000000000000000000'); // 2147483647
echo intval(42, 8); // 42
echo intval('42', 8); // 34
echo intval(array()); // 0
echo intval(array('foo', 'bar')); // 1
?>

关于PHP 和 Laravel : ConvertingVARCHAR value to FLOAT in query,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30822733/

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