我有以下SQL查询.
SELECT SUM(final_insurance_total) as total
FROM `leads`
GROUP BY leads.status
Run Code Online (Sandbox Code Playgroud)
我在前导表中有一行数据,其final_insurance_total值为458796. final_insurance_total的数据类型为float.
出于某种原因,MySQL将单行汇总为"458796.375".
如果我将查询更改为
SELECT (final_insurance_total) as total
FROM `leads`
GROUP BY leads.status
Run Code Online (Sandbox Code Playgroud)
返回正确的值.世界上到底发生了什么?
我一直在努力用PHP转移到OOP.我在php.net上阅读了解释,但我希望我能在这里得到一些具体的答案.
我试图创建以下示例来说明我的问题.假设我有"数据库","产品"和"用户"类,我想在用户有权访问时显示产品.
所以我调用"Products"类"showProducts()"函数,该函数又创建"User"类的实例,该类创建"Database"对象的实例并检查用户访问级别.
如果用户具有访问权限,则"showProducts()"函数将创建"Database"对象的另一个实例,并查询数据库.
class Database{
public function query(){
//runs query here
}
public function __construct() {
//sets up connection here
}
}
class User{
public function checkAccess(){
$db = new Database();
$db->query( //pass in query to check access )
//does stuff, then returns true or false
}
}
class Products{
public function showProducts(){
$user = new User();
if($user->checkAccess())
$db = new Database();
$db->query( //pass in query to get products )
}
}
Run Code Online (Sandbox Code Playgroud)
我希望有人可以用正确的方式说明如何做到这一点.
我想有一些控制器类,它创建一个"数据库"对象,可供所有需要访问它的类使用,而不必创建"Database"对象的多个实例.我希望与users类相同,因此有一个$ users对象,所有类都可以访问,而不必每次我需要在"User"类中使用某些东西时创建一个新对象.
如果我的问题不明确,我道歉,并提前感谢任何回复!!
感谢大家的回复!
我使用 PHP (7.2.30) 和 Redis 作为会话处理程序。一切都很好,会话保存到 Redis,但我很少会看到以下错误:
Error session_start(): Failed to read session data: redis (path: example.com:6379)
Run Code Online (Sandbox Code Playgroud)
我正在使用内置会话处理的 PHP,如下所示。
session_start();
$_SESSION['something'] = 'value';
Run Code Online (Sandbox Code Playgroud)
关于如何查找原因有什么建议吗?
再会!
请求页面时,cURL 的运行速度非常慢。我知道这不是所请求的页面,因为该页面立即返回到浏览器中。
我注意到的两件事
我有以下代码:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url );
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, false);
$output = curl_exec($ch);
curl_close($ch);
Run Code Online (Sandbox Code Playgroud)
回显curl_getinfo()给了我以下内容
[url] => http://127.0.0.1:80/wpengine/?json=t
[content_type] => text/html; charset=iso-8859-1
[http_code] => 302
[header_size] => 215
[request_size] => 64
[filetime] => -1
[ssl_verify_result] => 0
[redirect_count] => 0
[total_time] => 17.238
[namelookup_time] => 0
[connect_time] => 0
[pretransfer_time] => 0
[size_upload] => 0
[size_download] => 221
[speed_download] => 12
[speed_upload] => 0
[download_content_length] …Run Code Online (Sandbox Code Playgroud)