行走的泡饼-生命毕竟漫长，每一寸时光都要自己亲历 - sprintf
type: channel
link: http://walkingpaobing.cn/tag/sprintf/
items: php中的格式化打印输出结果

php中的格式化打印输出结果
type: item
date: 2023-04-25T21:11:00+08:00
description: // 格式化打印 // 数组格式化 $arr = ['red', 'green', 'blue']; // var_dump($arr); // echo ' '; // 只关心值 // print_r($arr); // echo ' '; // print_r($arr),不应该直接打印,而是应该返回一个字符串 // 传入第二个参数true,就不会打印输出,而是返回 // echo ' ' . print_r($arr) . ' '; echo ' ' . print_r($arr, true) . ' '; // echo gettype(print_r($arr, true)); // C语言, 有一个printf(模板,模板中的变量) // %s: string, %d: int, %f: float printf(' %s ', print_r($arr, true)); // printf()需要只返回,不打印 echo sprintf(' %s ', print_r($arr, true)); printf('品名: %s, 单价: %.2f 元, 数量: %d 部 ', '手机', 5000, 3); $arr = ['手机', 5000, 3]; vprintf('品名: %s, 单价: %.2f 元, 数量: %d 部 ', $arr); // 它也有一个只返回不打印的版本 echo vsprintf('品名: %s, 单价: %.2f 元, 数量: %d 部 ', $arr); // PDO: DSN // new PDO($dsn, $usrname,$password); // $dsn = 'mysql:host=localhost;dbname=phpedu;port=3306;charset=utf8'; //这里数据库和密码改成你的才会显示连接成功，不然就会报错。 $params = ['mysql', 'localhost', 'phpedu', '3306', 'utf8']; $dsn = vsprintf('%s:host=%s;dbname=%s;port=%s;charset=%s', $params); $username = 'root'; $password = 'root'; echo $dsn; $pdo = new PDO($dsn, $username, $password); if ($pdo) echo ' 连接成功 '; ?> {message type="success" content="pre标签按源码格式显示到浏览器窗口。"/}输出结果Array([0] => red [1] => green [2] => blue)Array([0] => red [1] => green [2] => blue)Array([0] => red [1] => green [2] => blue)品名: 手机, 单价: 5000.00 元, 数量: 3 部品名: 手机, 单价: 5000.00 元, 数量: 3 部品名: 手机, 单价: 5000.00 元, 数量: 3 部mysql:host=localhost;dbname=phpvip;port=3306;charset=utf8连接成功