<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # php-cli ***** 在前面的簡單介紹中,我們已經了解了有 php-cli 這個模式,現在我們繼續詳細了解下 php-cli 和 傳統 web 模式不一樣的地方吧。 <br /> ## 超時時間 在 php-cli 中,是沒有超時時間的,也無法通過 set\_time\_limit 設置超時時間,例如: ```php <?php set_time_limit(30); while (1) { echo 1; sleep(1); } ``` 這段代碼,在常規 web 下運行,只要到30秒就會報 Fatal error: Maximum execution time of 30 seconds exceeded in ...... 這樣的錯誤。 而在 php-cli 中,這段代碼將會一直執行,一直輸出到1到控制臺中。 <br /> ## buffer緩沖 在常規 web 模式中,echo、var_dump、phpinfo等輸出語句/函數,默認情況下是先進入 php 緩沖區,等緩沖區到達一定數量,才開始傳輸給 web 服務器的,但是在 php-cli 模式中,默認是關閉 buffer,直接輸出,例如以下代碼: ```php <?php /** * php-cli下默認關閉buffer,由于web訪問測試較麻煩, * 該段代碼只為了查看以及測試緩沖區的作用,在web模式下,默認開啟,無需手動開啟,可自行配置 */ ob_start(); // 開啟buffer緩沖區 for ($i = 0; $i < 1000; $i++) { echo $i; sleep(1); if ($i % 10 == 0) { //當i為10的倍數時,將直接結束并輸出緩沖區的數據,然后再次開啟緩沖區 ob_end_flush(); ob_start(); } } ``` > 可通過 ob_get_contents 函數獲取緩沖區內容,ob 緩沖系列函數可自行搜索了解 buffer 緩沖詳細內容可查看: [關于php的buffer緩沖區](http://blog.huanghui.xyz/2018/12/10/Swoole/Swoole%E5%9F%BA%E7%A1%80/%E5%85%B3%E4%BA%8Ephp%E7%9A%84buffer%E7%BC%93%E5%86%B2%E5%8C%BA/) <br /> ## 標準輸入/輸出/錯誤 執行一個命令行都存在3個標準文件(linux 一切皆文件) * 標準輸入(stdin,通常對應終端的鍵盤,進程可通過該文件獲取鍵盤輸入的數據) * 標準輸出(stdout,對應終端的屏幕,進程通過寫入數據到該文件,將數據顯示到到屏幕) * 標準錯誤(stderr,對應終端的屏幕,進程通過寫入數據到該文件,將錯誤信息顯示到屏幕) 在 php-cli 命令下,可通過以上3個文件句柄 進行一系列的邏輯操作,比如: 啟動 php 文件,監聽標準輸入,獲取到輸入的網址,php 再進行網址的數據請求/接收 等等操作,而在常規 web 模式,標準輸出會被攔截。 > echo var_dump等輸出函數其實就是 stdout,但是在常規 web 訪問下被重定向到了 web 服務器,然后由 web 服務器輸出 了解詳細內容可查看:[PHP的各種I/O流以及用法](http://blog.huanghui.xyz/2018/12/10/Swoole/Swoole%E5%9F%BA%E7%A1%80/php%E7%9A%84%E5%90%84%E7%A7%8DIO%E6%B5%81%E4%BB%A5%E5%8F%8A%E7%94%A8%E6%B3%95/) <br /> ## php-cli 專屬擴展 php 有些擴展在常規 web 下運行時沒用/沒有意義的。例如: * swoole擴展 * socket擴展 * 等等
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看