iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >使用PHP挑战在线编程题的示例分析
  • 115
分享到

使用PHP挑战在线编程题的示例分析

2023-06-14 10:06:28 115人浏览 薄情痞子
摘要

这篇文章主要介绍了使用PHP挑战在线编程题的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。用PHP挑战在线编程题一、php STDIN、STDOUT、STDERR简介

这篇文章主要介绍了使用PHP挑战在线编程题的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

用PHP挑战在线编程题

一、php STDIN、STDOUT、STDERR简介: 

STDINSTDOUTSTDERR命令输入输出流,用于向控制台(linux shell终端、windows cmd终端)输入、输出内容,它们默认是已经打开的,可以直接对他们进行读写操作,它们只能在CLI(command-line interface,命令行界面)模式中使用,在Http模式时,它们是未定义的。

而他们的打开副本php://stdinphp://stdoutphp://stderr 也无法输出内容到http浏览器,经测试:写入php://stderr的内容将会输入到默认站点的错误日志中,其它两种无任何效果。

STDIN/STDOUT/STDERR简介:

原始流流打开副本描述
STDINphp://stdin标准输入(standard input),只读,用于从控制台输入内容;
STDOUTphp://stdout标准输出(standard output),只写,用于向控制台输出正常信息
STDERRphp://stderr错误输出(standard error),只写,用于向控制台输出错误信息

官方推荐使用常量 STDIN、 STDOUT 和 STDERR 来代替它们手动打开的副本封装器php://stdinphp://stdoutphp://stderr

二、PHP STDIN用法:

PHP语言中"STDIN"用于从控制台读取内容,遇到此常量或者通过fopen()函数打开php://stdin脚本将会等待用户输入内容,直到用户按下回车键提交。

写个stdin.php测试一下:

<?phpecho "请输入内容:";$jimmy = fgets(STDIN);echo sprintf("输入的内容为: %s\n", $jimmy); $demo = fopen('php://stdin', 'r');echo "请输入: ";$test = fread($demo, 12); //最多读取12个字符echo sprintf("输入为: %s\n", $test);fclose($demo);

运行结果:

请输入内容:sad输入的内容为: sad请输入: asdasdasdasdasdasd输入为: asdasdasdasd(这里因为设置了最多读取12个字符,设置更多一些就可以完整显示)
三、PHP STDOUT用法:

PHP语言中STDOUT用于向控制台输出标准信息;向此常量、或者向fopen()函数打开的php://stdout写入的内容将直接输出到控制台的标准输出;标准输出的内容可以用过">"或者"1>"重定向到指定地方,比如文件。

同理我们写个文件来测试一下

<?phpfwrite(STDOUT, "通过STDOUT写入;\n"); $demo = fopen("php://stdout", "w");fwrite($demo, "通过php://stdout写入;");fclose($demo);

运行一下:

☁  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()函数打开的"php://stderr"写入的内容将直接输出到控制台的错误输出;错误输出的内容可以用过"2>"重定向到指定地方,比如文件;也可以使用"2>&1"将错误输出定向到标准输出,与标准输出合并。

我们测试一下

<?phpfwrite(STDERR, "STDERR写入的错误输出;\n"); fwrite(STDOUT, "STDOUT写入的正常输出;\n");$stdout = fopen("php://stdout", "w");fwrite($stdout, "php://stdout写入的正常输出;\n");fclose($stdout);$stderr = fopen("php://stderr", "w");fwrite($stderr, "php://stderr写入的错误输出;\n");fclose($stderr);

正常输出和错误输出分别定向到不同文件:

☁  test  php demo.php 1>demo.ok 2>demo.err☁  test   cat demo.okSTDOUT写入的正常输出;php://stdout写入的正常输出;☁  test   cat demo.errSTDERR写入的错误输出;php://stderr写入的错误输出;

正常输出和错误输出合并定向到统一文件:

☁  test  php demo.php 1>AllInOne 2>&1☁  test  cat AllInOneSTDERR写入的错误输出;STDOUT写入的正常输出;php://stdout写入的正常输出;php://stderr写入的错误输出;

好了,接下来可以去Sphere Online Judge叱咤风云了,先测试个demo题目

写个代码

<?php    // your code here$x=0;while($x!=42){   $x = fgets(STDIN);   if($x!=42){   echo sprintf("%d\n",$x);}}?>

感谢你能够认真阅读完这篇文章,希望小编分享的“使用PHP挑战在线编程题的示例分析”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网PHP编程频道,更多相关知识等着你来学习!

--结束END--

本文标题: 使用PHP挑战在线编程题的示例分析

本文链接: https://www.lsjlt.com/news/269800.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 使用PHP挑战在线编程题的示例分析
    这篇文章主要介绍了使用PHP挑战在线编程题的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。用PHP挑战在线编程题一、PHP STDIN、STDOUT、STDERR简介...
    99+
    2023-06-14
  • LeetCode编程挑战:使用PHP和Bash解决编程难题。
    LeetCode是一家专注于算法和数据结构的在线编程练习平台。在这个平台上,你可以挑战各种难度级别的编程题目,提高自己的算法能力和编程技能。本文将介绍如何使用PHP和Bash来解决LeetCode上的编程难题。 PHP是一种流行的服务器端...
    99+
    2023-08-17
    bash leetcode 关键字
  • java线程编程的示例分析
    这篇文章给大家分享的是有关java线程编程的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。线程基础◆线程(thread)其实是控制线程(thread of control)的缩写.每一个线程都是独立的,因...
    99+
    2023-06-03
  • java多线程编程的示例分析
    这篇文章将为大家详细讲解有关java多线程编程的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一.相关知识:Java多线程程序设计到的知识:(一)对同一个数量进行操作(二)对同一个对象进行操作(三...
    99+
    2023-05-30
    java
  • 如何在 LeetCode 上使用 PHP 进行编程挑战?
    LeetCode 是一个非常受欢迎的在线编程挑战平台,它提供了各种各样的算法和数据结构题目,以及面试题目,以帮助开发人员提高他们的编程技能。在本文中,我们将探讨如何在 LeetCode 上使用 PHP 进行编程挑战。 一、注册 LeetC...
    99+
    2023-09-29
    npm leetcode 重定向
  • PHP分布式编程的挑战与机遇
    随着互联网技术的发展,分布式系统越来越受到人们的关注。PHP作为一种流行的Web编程语言,在分布式系统中也扮演了重要的角色。本文将探讨,并介绍一些常用的解决方案。 一、分布式系统的挑战 分布式系统是由多个独立的计算机组成的,这些计算机通过...
    99+
    2023-09-03
    分布式 npm numy
  • PHP中SOCKET编程的示例分析
    这篇文章主要介绍了PHP中SOCKET编程的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1. 预备知识一直以来很少看到有多少人使用php的socket模块来做一些事...
    99+
    2023-06-15
  • Golang多进程编程的优势与挑战分析
    在当今互联网快速发展的时代,高性能、并发能力强的编程语言备受开发者青睐。Golang作为一种开源的编程语言,以其简洁、高效、易学的特点受到了广泛关注。其中,Golang在多进程编程方面...
    99+
    2024-03-01
    安全 性能 竞态条件 优势:并发 挑战:调试
  • Java并发编程之线程池的示例分析
    这篇文章将为大家详细讲解有关Java并发编程之线程池的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。什么是线程池是一种基于池化思想管理线程的工具。池化技术:池化技术简单点来说,就是提前保存大量的资...
    99+
    2023-06-20
  • Java多线程中线程安全问题的示例分析
    这篇文章主要介绍了Java多线程中线程安全问题的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1. 什么是线程安全和线程不安全?什么是线程安全呢?当多个线程并发访问某...
    99+
    2023-06-29
  • Java多线程同步问题的示例分析
    这篇文章主要介绍Java多线程同步问题的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!简单了解下在操作系统中进程和线程的区别:  进程:每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开...
    99+
    2023-05-30
    java
  • PHP编程快速入门的示例分析
    这篇文章将为大家详细讲解有关PHP编程快速入门的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。面向对象编程(OOP)是我们编程的一项基本技能,PHP4对OOP提供了良好的支持。如何使用OOP的思想...
    99+
    2023-06-17
  • udp编程的示例分析
    小编给大家分享一下udp编程的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!什么是UDPUDP是User Datagram Protocol(用户数据报协...
    99+
    2023-06-27
  • JUC并发编程中进程与线程的示例分析
    这篇文章将为大家详细讲解有关JUC并发编程中进程与线程的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。进程与线程进程程序由指令和数据组成,但这些指令要运行,数据要读写,就必须将指令加载至 CPU,...
    99+
    2023-06-29
  • Python多线程的示例分析
    这篇文章将为大家详细讲解有关Python多线程的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。线程相对进程来说是“轻量级”的,操作系统用较少的资源创建和管理线程。程序中的线程在相同的内存空间中执行...
    99+
    2023-06-17
  • Java线程池的示例分析
    小编给大家分享一下Java线程池的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!为什么需要线程池我们知道创建线程的常用方式就是 new Thread() ...
    99+
    2023-06-22
  • Java多线程的示例分析
    这篇文章给大家分享的是有关Java多线程的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。线程的创建继承Thread实现Runnable实现Callable使用继承Thread类来开发多线程的应用程序在设计...
    99+
    2023-06-20
  • Java中线程的示例分析
    这篇文章主要介绍了Java中线程的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。什么是进程?电脑中时会有很多单独运行的程序,每个程序有一个独立的进程,而进程之间是相互...
    99+
    2023-06-25
  • PHP面试题的示例分析
    这篇文章主要介绍了PHP面试题的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一 、PHP基础部分PHP语言的一大优势是跨平台,什么是跨平台?PHP的运行环境最优搭配...
    99+
    2023-06-15
  • ceph rbd在线resize的示例分析
    这篇文章主要为大家展示了“ceph rbd在线resize的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“ceph rbd在线resize的示例分析”这篇文章吧。ceph rbd在线re...
    99+
    2023-06-27
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作