成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

用PHP挑戰(zhàn)在線編程題

JackJiang / 876人閱讀

摘要:今天想在中用來在線挑戰(zhàn)一些題目,要用到標準輸入輸出,但最近在寫又不想用來寫,平時寫項目都是表單提交,還真沒有考慮過這個,于是看了下文檔。

今天想在Sphere Online Judge中用PHP來在線挑戰(zhàn)一些題目,要用到標準輸入輸出,但最近在寫php又不想用c來寫,平時寫項目都是表單提交,還真沒有考慮過這個,于是看了下文檔。

文檔在此:http://php.net/manual/zh/wrappers.php.php

一、PHP STDIN、STDOUT、STDERR簡介: 

STDIN、STDOUT、STDERR命令輸入輸出流,用于向控制臺(linux shell終端、windows cmd終端)輸入、輸出內容,它們默認是已經(jīng)打開的,可以直接對他們進行讀寫操作,它們只能在CLI(command-line interface,命令行界面)模式中使用,在Http模式時,它們是未定義的。

而他們的打開副本php://stdinphp://stdout、php://stderr?也無法輸出內容到http瀏覽器,經(jīng)測試:寫入php://stderr的內容將會輸入到默認站點的錯誤日志中,其它兩種無任何效果。

STDIN/STDOUT/STDERR簡介:

原始流 流打開副本 描述
STDIN php://stdin 標準輸入(standard input),只讀,用于從控制臺輸入內容;
STDOUT php://stdout 標準輸出(standard output),只寫,用于向控制臺輸出正常信息;
STDERR php://stderr 錯誤輸出(standard error),只寫,用于向控制臺輸出錯誤信息;

  官方推薦使用常量?STDIN、?STDOUT?和?STDERR?來代替它們手動打開的副本封裝器php://stdin、 php://stdoutphp://stderr。

二、PHP STDIN用法:

PHP語言中"STDIN"用于從控制臺讀取內容,遇到此常量或者通過fopen()函數(shù)打開php://stdin腳本將會等待用戶輸入內容,直到用戶按下回車鍵提交。

寫個stdin.php測試一下:


運行結果:

請輸入內容:sad
輸入的內容為: sad

請輸入: asdasdasdasdasdasd
輸入為: asdasdasdasd(這里因為設置了最多讀取12個字符,設置更多一些就可以完整顯示)
三、PHP STDOUT用法:

 PHP語言中STDOUT用于向控制臺輸出標準信息;向此常量、或者向fopen()函數(shù)打開的php://stdout寫入的內容將直接輸出到控制臺的標準輸出;標準輸出的內容可以用過">"或者"1>"重定向到指定地方,比如文件。

同理我們寫個文件來測試一下


運行一下:

?  test  php demo.php > a.txt
?  test  cat a.txt
通過STDOUT寫入;
通過php://stdout寫入;% 

?  test  php demo.php
通過STDOUT寫入;
通過php://stdout寫入;% 
?  test
四、PHP STDERR用法:

PHP語言中"STDERR"用于向控制臺輸出錯誤信息;向常量、或者向fopen()函數(shù)打開的"php://stderr"寫入的內容將直接輸出到控制臺的錯誤輸出;錯誤輸出的內容可以用過"2>"重定向到指定地方,比如文件;也可以使用"2>&1"將錯誤輸出定向到標準輸出,與標準輸出合并。

我們測試一下


正常輸出和錯誤輸出分別定向到不同文件:

?  test  php demo.php 1>demo.ok 2>demo.err
?  test   cat demo.ok
STDOUT寫入的正常輸出;
php://stdout寫入的正常輸出;
?  test   cat demo.err
STDERR寫入的錯誤輸出;
php://stderr寫入的錯誤輸出;

正常輸出和錯誤輸出合并定向到統(tǒng)一文件:

?  test  php demo.php 1>AllInOne 2>&1
?  test  cat AllInOne
STDERR寫入的錯誤輸出;
STDOUT寫入的正常輸出;
php://stdout寫入的正常輸出;
php://stderr寫入的錯誤輸出;

好了,接下來可以去Sphere Online Judge叱咤風云了,先測試個demo題目

寫個代碼

提交

哈哈哈哈,完全ok,再也不用限制于java和c了,我可以用PHP挑戰(zhàn)一些題目了,大家也可以去試試?

個人訂閱號

Jimmy的技術樂園

文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://systransis.cn/yun/25676.html

相關文章

  • Python入門資料大全(更新ing)

    摘要:在線挑戰(zhàn),還沒用過,貌似現(xiàn)在對英文資料心里還有種抵觸,必須克服實驗樓研發(fā)工程師包含了等學習課程。書的作者就是開發(fā)了用于數(shù)據(jù)分析的著名開源庫的作者英文資料,對數(shù)據(jù)分析中要用到的一些庫,等等做了簡要介紹。形式的資料,示例代碼都很全。 showImg(https://segmentfault.com/img/remote/1460000004852849); 一、說明 面對網(wǎng)絡上紛繁復雜的資...

    wuaiqiu 評論0 收藏0
  • 進攻即是最好的防御!19個練習黑客技術的在線網(wǎng)站

    摘要:進攻即是最好的防御個練習黑客技術的在線網(wǎng)站進攻即是最好的防御,這句話同樣適用于信息安全的世界。社區(qū)有接近萬的注冊會員也是最大的一個黑客社區(qū)之一。 進攻即是最好的防御!19個練習黑客技術的在線網(wǎng)站 進攻即是最好的防御,這句話同樣適用于信息安全的世界。這里羅列了19個合法的來練習黑客技術的網(wǎng)站,不管你是一名開發(fā)人員、安全工程師、代碼審計師、滲透測試人員,通過不斷的練習才能讓你成為一個優(yōu)秀安...

    tracy 評論0 收藏0
  • 如何正確學習JavaScript

    摘要:然而,雖然先生對無所不知,被譽為世界的愛因斯坦,但他的語言精粹并不適合初學者學習。即便如此,在后面我還是會建議把當做補充的學習資源。但目前為止,依然是學習編程的好幫手。周正則表達式,對象,事件,閱讀權威指南第,,,章。 既然你找到這篇文章來,說明你是真心想學好JavaScript的。你沒有想錯,當今如果要開發(fā)現(xiàn)代網(wǎng)站或web應用(包括互聯(lián)網(wǎng)創(chuàng)業(yè)),都要學會JavaScript。而面對泛...

    canger 評論0 收藏0
  • 深入理解js

    摘要:詳解十大常用設計模式力薦深度好文深入理解大設計模式收集各種疑難雜癥的問題集錦關于,工作和學習過程中遇到過許多問題,也解答過許多別人的問題。介紹了的內存管理。 延遲加載 (Lazyload) 三種實現(xiàn)方式 延遲加載也稱為惰性加載,即在長網(wǎng)頁中延遲加載圖像。用戶滾動到它們之前,視口外的圖像不會加載。本文詳細介紹了三種延遲加載的實現(xiàn)方式。 詳解 Javascript十大常用設計模式 力薦~ ...

    caikeal 評論0 收藏0

發(fā)表評論

0條評論

JackJiang

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<