簡體   English   中英

PHP將變量字符串轉換為int

[英]PHP converting variable string to int

首先,由於變量字符串的定義方式,我無法在線找到該答案。 通常,我應該能夠將0加到變量中,或使用(int),但是它不起作用。

<?php

$casestringid = "'118'";
$caseid = $casestringid + 0;

echo $casestringid;

echo $caseid;

?>

輸出:'118'0

如您所見,由於第一個變量的聲明方式,將字符串轉換為整數的標准方法不起作用。 我的$casestringid是這樣寫的,因為它從另一個頁面請求一個數字。 我認為,與其嘗試更改格式的格式,不如尋求如何將看起來像這樣的字符串轉換為整數的幫助。 我希望caseid的輸出為118。感謝您的任何幫助。

問題是就PHP解析器而言, '118' 不是整數,而是一個字符串。 當然,對於我們來說,它看起來像一個整數,但是它帶有斜杠( ' ),使其成為“不可轉換”。

為此使用str_replace

intval(str_replace("'", '', $casestringid));

嘗試intval ($casestringid) + 0

編輯:

那么呢:

filter_var ($casestringid, FILTER_SANITIZE_NUMBER_INT);

我認為您再沒有其他機會了:

intval(str_replace("'",'',$casestringid));

更換 '':

intval(str_replace("'",'',$casestringid));

您必須刪除單引號並使用intval().

<?php

$casestringid = "'118'";
$parseid = str_replace("'", "", $casestringid);
$caseid = intval($parseid);

echo $casestringid;

echo $caseid;

?>
$casestringid = "'118'";
$int = str_replace("'", "", $casestringid);
echo intval($int);

如果它只是您要查找的整數,則可以使用。 它將刪除所有非數字字符,然后將其作為整數返回

function parseInt( $s ){
    return (int)(preg_replace( '~\D+~' , '' , $s ));
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM