PHP标准输入与输出

PHP标准输入与输出 一、PHP STDIN、STDOUT、STDERR简介: STDIN、STDOUT、STDERR命令输入输出流,用于向控制台(linux shell终端、windows cmd终端)输入、输出内容,它们默认是已经打开的,可以直接对他们进行读写操作,它们只能在CLI(command-line interface,命令行界面)模式中使用,在Http模式时,它们是未定义的。 而他们的打开副本php://stdin、php://stdout、php://stderr 也无法输出内容到http浏览器,经测试:写入php://stderr的内容将会输入到默认站点的错误日志中,其它两种无任何效果。 STDIN/STDOUT/STDERR简介:原始流流打开副本描述STDINphp://stdin标准输入(standard input),只读,用于从控制台输入内容; STDOUTphp://stdout标准输出(standard output),只写,用于向控制台输出正常信息; STDERRphp://stderr错误输出(standard error),只写,用于向控制台输出错误信息; 官方推荐使用常量 STDIN、 STDOUT 和 STDERR 来代替它们手动打开的副本封装器php://stdin、 php://stdout 和 php://stderr。 二、PHP STDIN用法: PHP语言中"STDIN"用于从控制台读取内容,遇到此常量或者通过fopen()函数打开php://stdin脚本将会等待用户输入内容,直到用户按下回车键提交。 新建文件demo.php <?php echo "请输入内容:"; $input = fgets(STDIN); echo sprintf("输入的内容为: %s\n", $input); $handle = fopen('php://stdin', 'r'); echo "请输入: "; $stdin = fread($handle, 10); //最多读取10个字符 echo sprintf("输入为: %s\n", $stdin); fclose($handle); //php demo.php 运行代码,键盘输入123,输出结果如下 //请输入内容:123 //输入的内容为: 123 //请输入: 456 //输入为: 456 三、PHP STDOUT用法: PHP语言中STDOUT用于向控制台输出标准信息;向此常量、或者向fopen()函数打开的php://stdout写入的内容将直接输出到控制台的标准输出;标准输出的内容可以用过">“或者"1>“重定向到指定地方,比如文件。 <?php fwrite(STDOUT, "STDOUT写入的正常输出;\n"); $stdout = fopen("php://stdout", "w"); fwrite($stdout, "php://stdout写入的正常输出;\n"); fclose($stdout); // php demo....

January 11, 2023 · 1 min · Leanku

# Carbon(nesbot/carbon)-- PHP 日期时间利器化

Carbon(nesbot/carbon)– PHP 日期时间利器化 一、Carbon介绍 Carbon 是 PHP 中最流行的 日期时间处理库,基于 PHP 原生的 DateTime 类封装,提供 链式操作、易读 API、时区支持 等强大功能。 特点: 链式调用,语义化强 支持日期时间加减、比较、格式化 支持中文等多语言友好显示 可与 Laravel、Hyperf 等框架无缝集成 官方文档:https://carbon.nesbot.com/docs/ 安装:composer require nesbot/carbon 二、基本使用 2.1 获取当前时间 $now = Carbon::now(); // 当前时间,默认系统时区 echo $now; // 2023-09-28 15:30:12 // 指定时区: $nowShanghai = Carbon::now('Asia/Shanghai'); 2.2 日期创建 $dt1 = Carbon::create(2023, 9, 28, 15, 30, 0); // 年, 月, 日, 时, 分, 秒 $dt2 = Carbon::parse('2023-12-31 23:59:59'); $dt3 = Carbon::today(); // 当天 0:00:00 $dt4 = Carbon::tomorrow(); // 明天 0:00:00 $dt5 = Carbon::yesterday(); // 昨天 0:00:00 2....

November 15, 2022 · 2 min · Leanku

Guzzle

Guzzle HTTP 客户端全解析及 PHP 使用与优化 一、介绍 Guzzle 是 PHP 世界中最流行的 HTTP 客户端库之一,用于发送 HTTP/HTTPS 请求并处理响应。 它支持: 同步和异步请求 HTTP/2 中间件机制(类似 Laravel / Hyperf 的管道) 并发请求 请求重试、超时、连接池 Guzzle 常被用于调用第三方 API、微服务接口或爬取网页数据。 官方文档:https://docs.guzzlephp.org 二 、安装 composer require guzzlehttp/guzzle 三、基本使用 3.1 同步 GET 请求 use GuzzleHttp\Client; $client = new Client([ 'base_uri' => 'https://api.example.com', 'timeout' => 5.0, // 超时时间 ]); $response = $client->get('/users/1'); echo $response->getStatusCode(); // 200 echo $response->getBody(); // JSON 或 HTML 3.2 POST 请求与 JSON 数据 $response = $client->post('/users', [ 'json' => [ 'name' => 'John', 'email' => 'john@example....

November 15, 2022 · 2 min · Leanku