2017-03-16 50 views
1

由於某種原因,在php函數中返回字符串時,第一個字之後的空格被刪除。我無法弄清楚爲什麼。爲什麼PHP在函數中返回字符串時在第一個字後刪除空格

function something() { 
    $string = "My sentence looks like this"; 
    return $string; 
} 

function something_else() { 
    $output = something(); 
    echo $output; 
} 

輸出 「Mysentence看起來像這樣」

編輯: 如果我行2之後添加echo $string;它打印$string正確。但是,第二個函數不會以這種方式輸出。

另外,我能夠得到它通過改變線路2合作

$string = "<strong>My sentence</strong looks like this"; 
+1

[This is working for me](http://sandbox.onlinephpfunctions.com/code/1abc4251bfab8ef480f6ef7ab6d17399399e2346) – apokryfos

+1

嗨,歡迎來到Stack Overflow。這段代碼也適用於我,在你的最終必須有其他東西導致缺失的空間。如果你試圖解釋你的生產環境(例如操作系統,PHP版本,執行方法等),那麼某人可能會使用他們的經驗來發現可能導致這種情況的原因。祝你好運,找到問題:) –

+0

我在Debian 8上使用PHP7.x。在Apache Web服務器上運行它。 @WilliamPatton看到我上面的編輯。 – MarkH

回答

1

經過測試各種瀏覽器後,該問題似乎只與MS Edge有關。它在Firefox,Chrome,Safari和IE中運行良好。

+2

你能解釋問題的原因,並找到解決辦法嗎?現在這個問題對我們來說是不可重現的,答案沒有意義。 – Goose

0

沒有什麼錯與您的代碼,也許你可以檢查「隱藏」字符可改變輸出,這取決於你正在使用的編輯器,搜索「在$編輯器中顯示隱藏的字符」。

+0

澄清,如果我在'something'函數中回顯$ string,它就可以工作。所以沒有隱藏的字符。從原始帖子中的功能輸出時,將刪除該空間。 – MarkH

相關問題