将字符串数组转换为整数php
问题: 如何最好地转换将字符串数组转换为整数php,php,string,integer,Php,String,Integer,问题: 如何最好地转换$p='”。内爆(“,”,$person)。“$p是否为整数 我所拥有的: 我试图使用if语句告诉$person==false $x['date']是我数据库中的时间戳。 我已经计算出了时差,现在我正试图让人消失,如果张贴超过3秒。 因此,我使用了$t>3秒,然后$p==false 对我来说,困难在于,$t是内爆的,所以它是一个字符串。我试图使用preg_match,但我认为这不是一个好主意。 我试图使用$difference=settype($t,“integer”)格式
$p='”。内爆(“,”,$person)。“代码>$p
是否为整数
我所拥有的:
我试图使用if语句告诉$person==false代码>
$x['date']
是我数据库中的时间戳。
我已经计算出了时差,现在我正试图让人消失,如果张贴超过3秒。
因此,我使用了$t>3
秒,然后$p==false代码>
对我来说,困难在于,$t
是内爆的,所以它是一个字符串。我试图使用preg_match,但我认为这不是一个好主意。
我试图使用$difference=settype($t,“integer”)但是我得到的是一个布尔值而不是一个数字
$diff = array();
$person = array();
foreach($stmt as $x)
{
$person[] = $x['names']. $x['ages'];
$posts[] = $x['date'];
$timePosted = new DateTime($posts[] = $x['date']);
echo 'Time Posted : '. $timePosted ->format("d-m-Y H:i:s");
echo "</br>";
date_default_timezone_set('Europe/London');
$today = date('d-m-Y H:i:s');
echo 'Current time is : '. $today;
echo "</br>";
$today = new DateTime(date('d-m-Y H:i:s'));
$interval = $timePosted->diff($today);
"Difference " . $interval->d. " days ". $interval->h. " hours ".$interval->i." minutes ".$interval->s." seconds ";
echo "</br>";
$diff[] = $interval->h. " hours ".$interval->i." minutes ".$interval->s." seconds ";
$diff[] = $interval->s; //last array seconds
}
$p=' "'.implode('","', $person).'"';
echo $t= ' "'.implode('","', $diff).'"'."<br />";
$difference = settype($t, "integer");
echo gettype($difference);
echo "</br>";
if( $t >3){
$p == false;
}else{
echo "its okay, smaller than 3 seconds";
}
$diff=array();
$person=array();
foreach(stmt为$x)
{
$person[]=$x['names'.$x['ages'];
$posts[]=$x['date'];
$timePosted=newdatetime($posts[]=$x['date']);
回显“发布时间:”.$timePosted->格式(“d-m-Y H:i:s”);
回声“”;
日期默认时区设置(“欧洲/伦敦”);
$today=日期('d-m-Y H:i:s');
echo“当前时间为:”.$today;
回声“”;
$today=新日期时间(日期('d-m-Y H:i:s');
$interval=$timePosted->diff($today);
“差异”。$interval->d.“天”。$interval->h.“小时”。$interval->i.“分钟”。$interval->s.“秒”;
回声“”;
$diff[]=$interval->h.“小时”..$interval->i.“分钟”..$interval->s.“秒”;
$diff[]=$interval->s;//最后数组秒数
}
$p=“”。内爆(“”,“,$person)。”;
echo$t='''”。内爆('','',$diff)。'''。“
”;
$difference=settype($t,“整数”);
echo-gettype($difference);
回声“”;
如果($t>3){
$p==false;
}否则{
echo“没问题,小于3秒”;
}
问题是您正在设置$difference=settype($t,“整数”)代码>
settype
函数返回一个布尔值。值$t
应设置为整数,因此要进行测试,请使用echo gettype($t)
而不是echo gettype($difference)代码>
此外,您使用的是比较运算符,而不是中的赋值
if( $t >3){
$p == false;
应该是
if( $t >3){
$p = false;
这是一个很长的问题,一开始不容易理解你说的话,但我看到你在问“将$p转换为整数?”,也许是$p=intval($p)
,将它转换为正确的整数?如果没有,你能把你的问题简短一点吗?$t
的价值是什么?@muhammed。是的,你说得对。对于这个问题,我很抱歉,我在问问题之前试图解释我的问题,我将尝试编辑这个问题。thanks@u_muldert是所有用户发布的时间与他们发布的时间和现在的时间之差(秒)。他实际上是对的,如果你在做settype,那么就做这个settype($t,“integer”)
而不是这个:$difference=settype($t,“整数”)代码>谢谢@Jeff Puckett II