我想發(fā)送一條系統(tǒng)消息,用他的名字稱呼用戶。該消息存儲在 .txt 文件中,如下所示:你好 $user->名字登錄鏈接:something.something/user/id在 userController(發(fā)送消息的地方)中,我現(xiàn)在嘗試用實際的 $user->firstname 替換 $user->firstname:$output = file_get_contents(Yii::$app->basePath."message.txt");$user = $this->findModel($id); //this is tested and works$output = str_replace("$user->firstname", $user->firstname, $output); 但是,此后我的輸出仍然與文本文件中的輸出完全相同。我究竟做錯了什么?
2 回答

縹緲止盈
TA貢獻2041條經(jīng)驗 獲得超4個贊
我認為這可能就像在您的str_replace
通話中使用單引號一樣簡單:
$output?=?str_replace('$user->firstname',?$user->firstname,?$output);
當(dāng)您使用雙引號時,PHP 在調(diào)用str_replace
.

哆啦的時光機
TA貢獻1779條經(jīng)驗 獲得超6個贊
$output = str_replace("$user->firstname", $user->firstname, $output);
雙引號內(nèi)的變量被替換——所以你不是要替換這里的文本 $user->firstname
,你是要替換文本(假設(shè)這是用戶的名字)——但是你的輸入文本中George
沒有,所以……沒有什么可以替換的。George
使用單引號,或使用 \ 轉(zhuǎn)義 $ 符號
- 2 回答
- 0 關(guān)注
- 127 瀏覽
添加回答
舉報
0/150
提交
取消