[英]'+' string operator from c++ to php
我正在將簡單的代碼從C ++移植到PHP,但遇到了問題。 我將顯示兩個簡單的測試代碼來說明我的問題。
C ++代碼:
string Test = "something";
Test += 16;
cout << Test << endl;
PHP代碼:
$Test = "something";
$Test += 16;
echo $Test;
輸出是不同的,我不知道如何像在C ++中那樣使PHP產生'+'字符串運算符。 輸出:
C ++:
東西►
PHP:
16
它已經做到了。 僅:PHP是弱類型的。
讓我解釋:
C ++
string Test = "something";
Test += 16;
您有字符串Test。 在這里添加16。 因為它已經是一個字符串(一串字符),所以這16個字符將被視為一個字符:►。
的PHP
$Test = "something";
$Test += 16;
您有一個變量$ Test,在第一種情況下它包含一個字符串。
您添加一個整數。 PHP自動將第一種情況轉換為整數,以便他可以將其添加。 “某物”變為0,因此$ test變為0 + 16 = 16。
我想您想要的是:
$Test .= chr(16);
對於PHP中的串聯,您不使用加號,而是使用點。
對於字符,請使用chr 。
PHP中的。=運算符類似於C ++中的+ =
$Test = "something";
$Test .= 16;
echo $Test; // something16
實際上,您希望具有+=
運算符的行為,因為+
運算符無法將string和int用作參數,請參閱+運算符,了解string和int
您想要做的是將int轉換為char,然后將其附加到字符串中,就像c ++ +=
運算符一樣。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.