以符合人类阅读的方式打印php数组

在程序开发过程中;打印数据进行查看调试是非常频繁的;如果没有一种易于阅读的样式那是相当痛苦的;

先定义一个数组;


1

2

3

4

5

6

7

8

9

$array=array(

    ‘t0‘=>‘test0‘,

    ‘t1‘=>‘test1‘,

    ‘t3‘=>array(

        ‘tt0‘=>‘test0‘,

        ‘tt1‘=>‘test1‘,

        ‘tt3‘=>‘test3‘,

        )

    );

如果用php系统函数print_r打印,出来的效果是这样的;


1

print_r($array);

我想除了超神级别的眼力,一般人是很难阅读的;

还好php为我们准备了一个稍微靠谱点的var_dump函数,效果是这样的:


1

var_dump($array);

var_dump临时用来打印小数组还可以凑合;如果打印一个结构复杂的数组,或者长期开发一个项目,这种样式依然看着不美观;

于是手写一个p函数,效果是这样的;


1

2

3

4

function p($data){

    echo ‘<hr><pre>‘.print_r($data,true).‘<pre><hr>‘;

}

p($array);

怎么样;世界瞬间干净整洁了吧,之所以加上2个<hr>标签;主要是为了同时p多个数组时,有个横线来分界;

在相当长一段时间内都是使用这样一个简陋的函数,直到有一天发现了bootstrap对<pre>的样式定义;于是p函数就 升级为了这个样子;效果是这样的:


1

2

3

4

5

6

function p($data){

    echo ‘<pre style="display: block;padding: 9.5px;margin: 0px 0px 10px;font-size: 13px;line-height: 1.42857;

    color: #333;word-breakbreak-all;word-wrap: break-word;#F5F5F5;

    border: 1px solid #CCC;border-radius: 4px;">‘.print_r($data,true).‘</pre>‘;

}

p($array);

再次深深感谢bootstrap;

本文为白俊遥原创文章,转载无需和我联系,但请注明来自白俊遥博客www.baijunyao.com

时间: 2024-10-12 17:02:10

以符合人类阅读的方式打印php数组的相关文章

按照长度递减的方式打印 字符串 &quot;BackSpace&quot;

/** * 按照长度递减的方式打印 字符串 "BackSpace" * 打印格式如下: * BackSpace * BackSpac * ackSpace * BackSpa * ackSpac * ckSpace * ..... */ /** * 按照长度递减的方式打印 字符串 "BackSpace" * 打印格式如下: * BackSpace * BackSpac * ackSpace * BackSpa * ackSpac * ckSpace * .....

桌面支持-设置adobe为默认pdf阅读软件方式

问题描述:设置adobe为默认pdf阅读软件方式 解决办法:

JSP基础——分别使用表达式和脚本方式打印九九乘法表

最近在学习慕课网的课程<java遇见HTML--JSP篇>,简单做些记录. 课程网址为:http://www.imooc.com/learn/166 任务描述:分别使用表达式和脚本方式打印九九乘法表 代码如下: <%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8"%> <% String path =

如何以编程方式打印到在 MFC 中的非默认打印机

http://cache.baiducontent.com/c?m=9f65cb4a8c8507ed4fece763105790245b09c0252bd7a74a2485d315d2390f07506694ea7a7d0d5d83d87f6305ac4957f7b86c65377571eb8f8dd50a8bb485582a9f5631671df65663d50edcba5154cb37e12efeae69f0caf625e7aec5a5de4320c944040a9780fb4d7467&p

利用指针地址偏移打印一维数组

// //  main.c //  利用指针地址偏移打印一维数组 // // Created by wanghy on 15/7/24. // Copyright (c) 2015年 wanghy. All rights reserved. // #include <stdio.h> #define len 10 int main(int argc, const char * argv[]){ //定义一个存放  int 类型元素的一维数组. int arry[]={1,2,3,4,5,6,7

更快的方式实现PHP数组去重(转)

概述 使用PHP的array_unique()函数允许你传递一个数组,然后移除重复的值,返回一个拥有唯一值的数组.这个函数大多数情况下都能工作得很好.但是,如果你尝试在一个大的数组里使用array_unique()函数,它会运行地慢一些. 有一个比较好而且更快的函数array_flip()来替代使用array_unique()函数来创建唯一的数组.这个魔法般的函数会交换数组里面每一个元素的键和值,因为键值必须唯一,因此,你会得到跟array_unique()函数一样的结果. 更快的方式实现PHP

符合人类方式阅读代码

1 //传递数据以易于阅读的样式格式化后输出 2 function p($data){ 3 // 定义样式 4 $str='<pre style="display: block;padding: 9.5px;margin: 44px 0 0 0;font-size: 13px;line-height: 1.42857;color: #333;word-break: break-all;word-wrap: break-word;background-color: #F5F5F5;borde

用二维数组的方式打印杨辉三角形

public static void main(String[] args) { // 二维数组来实现行列 int[][] yanghui = new int[10][]; // 初始化 for (int i = 0; i < yanghui.length; i++) { // 每行的个数是所在行数加一 yanghui[i] = new int[i + 1]; for (int j = 0; j < yanghui[i].length; j++) { yanghui[i][0] = 1; //

python基础:匹配指定目录下符合规则的文件,打印文件全路径

# -*- coding:utf-8 -*- #遍历目录树 import os,fnmatch def all_files(root, patterns='*', single_level=False, yield_folder=False): # 将模式从字符串中取出放入列表中 patterns = patterns.split(';') for path, subdirs, files in os.walk(root): if yield_folder: files.extend(subdi