[英]C++ Is it possible to pass text with line breaks to a C++ program?
我正在使用system()函數通過PHP調用C ++程序:
$use = '"' . $_POST['source'] . '"';
system("Subject " . $use);
$ use存儲一些可能包含換行符的文本,並使用$ _POST變量將其自身傳遞給PHP程序。 如果我將此變量傳遞給C ++程序,並且所包含的文本帶有換行符,則僅第一行被傳遞給程序。 我試圖通過使用兩個引號來避免這種情況,但這是行不通的。 因此,例如輸入
word 1
word 2
那么只有單詞1被傳遞給C ++程序。 相反,如果輸入形式為
word 1 word 2
那當然一切正常
如果有解決方案,該如何解決?
您需要在命令行中轉義$use
system("Subject " . escapeshellarg($use))
據我了解,您只需要用空格替換換行符:
$use= str_replace ("\n", " ", $use);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.