亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

php數組的值轉換類型后有問題

php數組的值轉換類型后有問題

PHP
翻閱古今 2018-08-04 18:10:38
請幫看下代碼$Dss=array(0,0,0,0,0,0,0,0,0,0);for ($i=1;$i<=12;$i++){ //這個循環是為了取指定的12條數據    //$sql="從數據庫取值";    $row['DSS'] = '1,2,3,4,5,6,7,8,9,10|11,12,13,14,15,16,17,18,19,20'; //取到的值(只有兩條數據有值)    $Dsx=explode("|",$row['DSS']); //以|分割為數組    foreach ($Dsx as $Ds=>$v){ //遍歷        if (strpos($v,",")){ //取到值才進行操作            $ns=array_pad(explode(",",$v),15,0); //預防值不夠15位            for($c=0;$c<15;$c++){                //$Dss[$c]=floatval($Dss[$c]); //不轉換為原值,一轉換就為0 ???                //$ns[$c]=floatval($ns[$c]); //不轉換為原值,一轉換就為0 ???                $Dss[$c].=$ns[$c]; //拼接正常,不能用+= 否則為0 ???            }        }    }}var_dump($Dss[0]);如果照上面的代碼運行下來是 string(9) "0111" 值都是正常的。但不能進行類型轉換,一轉換就為0,而我想要的結果是12.求解
查看完整描述

2 回答

?
慕的地8271018

TA貢獻1796條經驗 獲得超4個贊

先賦值再轉換

查看完整回答
反對 回復 2018-08-08
?
MMMHUHU

TA貢獻1834條經驗 獲得超8個贊

終于找到原因了,從數據庫取出來的值含有控制字符,在處理前進行替換
$row['DSS']=preg_replace( '/[\x00-\x1F]/','',$row['DSS']);

現在結果完成正確了


查看完整回答
反對 回復 2018-08-08
  • 2 回答
  • 0 關注
  • 1080 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號