2017-08-16 26 views
-3

這個想法是發送像bob & \\apples這樣的術語到服務器。我得到這個錯誤:如何給Httpful帶雙引號的字符串?

Fatal error: Maximum execution time of 30 seconds exceeded

public function index($request, $response) 
{  
    $uri = 'http://example.org/folder?key=["bob", "\\apples"]; 
    $content = \Httpful\Request::get($uri)->send(); 
    return $content; 
} 

隨着用戶RWC指出,這似乎是導致這個錯誤的庫。

神祕的是,它只適用於一個術語(?key="bob"),但有兩個它沒有。當我將URL放入瀏覽器時,我用一個和兩個術語取回正確的結果(JSON響應)。所以最後它可以工作,但是Httpful做了一些我還不知道的事情。

+4

要獲取有效的網址/查詢字符串,您應該在值上使用'urlencode()'。 'key'究竟應該包含什麼? – jeroen

+0

@jeroen'key'應該包含\\。現在就會涌入'urlencode()'。 – Magiranu

+0

urlencode()可能不會幫助你。看到我的答案。 – RWC

回答

1

你問的問題是非常具體的你正在使用的庫,Httpful,而不是一個純粹的PHP問題。

這是一個有效的URL:

https://www.google.com/search?q= \

等 'http://server/search?key= \' 是一個有效的URL。

如果下面的命令不起作用

Request::get($uri)->send() 

你要怪庫(Httpful)。你提供了一個有效的URL,所以在我看來,如果這個文庫寫得很好,它應該可以工作。 所以你必須做一些事情才能使它工作。什麼?爲此你必須閱讀庫的文檔。

很高興聽到您找到解決方案,但與正常的PHP無關。

+0

謝謝你,你是絕對正確的。它與PHP無關,而與Httpful無關。我相應地更新了我的問題。 – Magiranu

+0

好的,我在最後得出了這個結論。我需要像這樣編碼unicode文本:'[' - >'%5B','''''''%5D','''''''%22',',' - >' %2C' 希望這將有助於任何人在未來。謝謝你們! – Magiranu

0
ini_set('max_execution_time', 500); 

在腳本中,將這個在上面,它的提高代碼的執行時間。

+0

這不回答「如何在PHP中將雙反斜槓添加到字符串中?」這個問題。 – RWC

+0

問題出在他上面提到的最大執行時間,他使用正確的語法來添加反斜槓。 – gaurav

+0

不,這不是他的問題,你的答案不能解決他的問題。他問了兩個問題。 1.「如何在PHP中將雙反斜槓添加到字符串中?」和2「爲什麼在這種情況下逃避反斜槓不起作用?」。你不提供這些問題的答案。 – RWC

相關問題