请教一个小问题,浏览器打印 PHP 数组时怎么自动换行 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
hyd8323268
V2EX    程序员

请教一个小问题,浏览器打印 PHP 数组时怎么自动换行

  •  
  • hyd8323268 2019-06-22 16:36:41 +08:00 5691 次点击
    这是一个创建于 2318 天前的主题,其中的信息可能已经有所发展或是发生改变。

    看到别的人的用 print 或者 vardump 打印的时候都是自动换行的,我的都是一行,每次都得 F12 才能方便看

    54 条回复    2019-06-24 09:44:37 +08:00
    xnode
        1
    xnode  
       2019-06-22 16:42:37 +08:00
    ."\n";
    hyd8323268
        2
    hyd8323268  
    OP
       2019-06-22 16:44:12 +08:00
    @xnode 不是 是数组,打印出来以后都在一行,我是想问这么弄成自动规整过的
    KomeijiSatori
        3
    KomeijiSatori  
       2019-06-22 16:44:55 +08:00
    view-source: 啊

    浏览器默认是不渲染 \r\n 的
    hyd8323268
        4
    hyd8323268  
    OP
       2019-06-22 16:46:05 +08:00
    @KomeijiSatori 什么意思....
    des
        5
    des  
       2019-06-22 16:46:44 +08:00
    <pre><? var_dump($aa); ></pre>
    hyd8323268
        6
    hyd8323268  
    OP
       2019-06-22 16:47:37 +08:00
    @des 不是,不需要在代码里面修改
    x86
        7
    x86  
       
    别人开了 xdebug 的拓展
    hyd8323268
        8
    hyd8323268  
    OP
       2019-06-22 16:49:23 +08:00
    @x86 我也开了 xdebug 了 还是没有
    x86
        9
    x86  
       2019-06-22 16:51:17 +08:00
    @hyd8323268 #8
    看下 php.ini 里的 html_errors 开启了没
    x86
        10
    x86  
       2019-06-22 16:53:05 +08:00
    另外说下你什么环境?
    如果是 PHPStudy 的话软件中开启 debug 是错误的,要手动在配置文件里把 xdebug 路径修正
    garlics
        11
    garlics  
       2019-06-22 16:57:25 +08:00 via Android
    截图看看?
    EscYezi
        12
    EscYezi  
       2019-06-22 17:00:18 +08:00 via iPad   1
    print_r
    datou
        13
    datou  
       2019-06-22 17:01:27 +08:00   1
    <br />
    hongdaworks
        14
    hongdaworks  
       2019-06-22 17:03:06 +08:00
    使用预定义格式<pre>标签包数组打印代码
    iyazhen
        15
    iyaozhen  
       2019-06-22 17:06:35 +08:00 via Android
    你能不能来个图?
    youzi118
        16
    youzi118  
       2019-06-22 17:08:30 +08:00
    echo "<pre>";
    wxyoung
        17
    wxyoung  
       2019-06-22 17:13:02 +08:00
    右键 -> 查看源代码
    hyd8323268
        18
    hyd8323268  
    OP
       2019-06-22 17:14:57 +08:00
    @wxyoung 不是我想要的效果
    wentaoliang
        19
    wentaoliang  
       2019-06-22 17:15:00 +08:00 via iPhone
    查看源代码...就可以了
    hyd8323268
        20
    hyd8323268  
    OP
       2019-06-22 17:15:06 +08:00
    @x86 是 phpstudy
    misaka19000
        21
    misaka19000  
       2019-06-22 17:15:39 +08:00 via Android
    哈哈,PHP 果然是世界上最好语言
    hyd8323268
        22
    hyd8323268  
    OP
       2019-06-22 17:15:44 +08:00
    @iyaozhen 大哥你教我怎么能上传图 : )
    hyd8323268
        23
    hyd8323268  
    OP
       2019-06-22 17:16:08 +08:00
    @wentaoliang 我就是为了省这一步
    x86
        24
    x86  
       2019-06-22 17:17:06 +08:00   1
    @hyd8323268 #20
    PHPstudy 的话找 php.ini 文件,拉倒最下面把 xdebug 的路径改正确,作者预留的是他的路径
    hyd8323268
        25
    hyd8323268  
    OP
       2019-06-22 17:22:35 +08:00
    @x86 我现在的内容如下:

    [XDebug]
    xdebug.profiler_output_dir="D:\work_tool\phpstudy\PHPTutorial\tmp\xdebug"
    xdebug.trace_output_dir="D:\work_tool\phpstudy\PHPTutorial\tmp\xdebug"
    zend_extension="D:\work_tool\phpstudy\PHPTutorial\php\php-5.6.27-nts\ext\php_xdebug.dll"

    这个 zend_extension 是我修改过的,还是不可以,这个扩展文件也是有的
    youzi118
        26
    youzi118  
       2019-06-22 17:24:03 +08:00
    @hyd8323268 你试下我说的,在打印的数组前面加上
    echo "<pre>";
    hyd8323268
        27
    hyd8323268  
    OP
       2019-06-22 17:26:19 +08:00
    @youzi118 是可以的 但是我想怎么不这样强行修改,去改 print_r 的原代码?我担心有时候会出问题
    youzi118
        28
    youzi118  
       2019-06-22 17:31:52 +08:00   1
    @hyd8323268 我倒是没有考虑过你说的问题,我工作的时候一直这么用的,打印数据的话肯定也是测试,不会应用到生产环境中.
    dobelee
        29
    dobelee  
       2019-06-22 18:03:39 +08:00 via Android
    无语。。。这玩意还要改源代码。
    自己实现一个方法,自动包含 pre 不就好了,或者自动把\n 替换成<br>。
    Canon1014
        30
    Canon1014  
       2019-06-22 18:28:32 +08:00
    ```php
    function dd($data){
    echo "<pre>";
    var_dump($data);
    echo "</pre>";
    die();
    }
    ```
    Laravel 写多了喜欢用 dd
    写到一个公共函数的文件下
    在框架入口文件引入
    baobao1270
        31
    baobao1270  
       2019-06-22 18:38:34 +08:00
    把 HTTP Header 设成 text/plain
    ben1024
        32
    ben1024  
       2019-06-22 19:02:02 +08:00 via iPhone
    <pre> or <br/>
    jiejiss
        33
    jiejiss  
       2019-06-22 20:21:09 +08:00
    Content-Type: text/plain
    ShundL
        34
    ShundL  
       2019-06-22 20:41:45 +08:00
    xdebug.overload_var_dump ???
    我觉得你应该放一张“别的人的 print ”截图看看效果。。。或者把时间精力用在写 bug 上。
    yc8332
        35
    yc8332  
       2019-06-22 20:44:24 +08:00
    你没有开 xdebug。。。不然就自己加下 pre 标签
    Rekkles
        36
    Rekkles  
       2019-06-22 23:25:57 +08:00
    用 composer 么,全局 composer 加载一个 var_dump,把 laravel 的 dd 方法复制一下 启动 php 的时候加载

    [地址]( https://learnku.com/articles/5075/php-global-uses-the-laravel-helper-function-dd)
    hundan
        37
    hundan  
       2019-06-23 00:50:31 +08:00 via Android
    找个 var_dump 的浏览器插件吧
    1762628386
        38
    1762628386  
       2019-06-23 01:42:51 +08:00
    **百度:css 自动换行**
    1762628386
        39
    1762628386  
       2019-06-23 01:44:33 +08:00
    ```
    <style>
    .divcss5{ border:1px solid #00F; height:120px; width:200px;word-wrap:break-word}
    </style>
    ```
    realpg
        40
    realpg  
    PRO
       2019-06-23 02:41:16 +08:00
    @hyd8323268 #2
    右键,查看网页源代码
    msg7086
        41
    msg7086  
       2019-06-23 05:09:22 +08:00
    print_r 输出的是纯文本,你浏览器吃的是 HTML。
    你要么 1. 改掉 print_r 输出 HTML。
    你要么 2. 写函数用 HTML 包住输出。
    你要么 3. 用 CSS 格式化纯文本。
    你要么 4. 让浏览器以纯文本渲染文件。

    1 太麻烦了。
    2 #26 #30 #36
    3 #39
    4 #33
    要是 2 3 4 都不喜欢的话,自己下载 PHP 改源码自己编译去吧……
    vovov
        42
    vovov  
       2019-06-23 05:59:15 +08:00 via Android
    不用楼上那么麻烦,chrome 浏览器有扩展,https://github.com/zxlie/FeHelper 是你想要的
    pixiaotiao
        43
    pixiaotiao  
       2019-06-23 08:33:18 +08:00 via Android
    print_r 查看源代码不是换行的吗
    way2create
        44
    way2create  
       2019-06-23 10:01:07 +08:00
    1 xdebug+html_errors=On
    2 pre 或很多框架也自带打印函数
    3 view-source
    ipwx
        45
    ipwx  
       2019-06-23 10:11:57 +08:00
    Content-Type: text/plain; charset=
    jimxu16
        46
    jimxu16  
       2019-06-23 10:40:32 +08:00 via iPhone
    看到别人的时候问下别人不就好了
    liuzhiyong
        47
    liuzhiyong  
       2019-06-23 11:00:46 +08:00 via Android
    pre 标签应该管用。
    VeryZero
        48
    VeryZero  
       2019-06-23 11:28:05 +08:00
    echo '<pre>';
    var_dump(array());
    flxxy
        49
    flxxy  
       2019-06-23 13:33:39 +08:00 via Android
    print_r($arr)
    davin
        50
    davin  
       2019-06-23 14:04:32 +08:00
    .print {white-space: pre-wrap}
    如果你打印的时候就没有换行,那就是没换行了。
    chen2019
        51
    chen2019  
       2019-06-23 14:15:20 +08:00 via Android
    输出之前 先 exho "<pre>"
    chen2019
        52
    chen2019  
       2019-06-23 14:15:50 +08:00 via Android
    echo "<pre/>";
    moodasmood
        53
    moodasmood  
       2019-06-24 09:44:03 +08:00
    直接 php test.php 这样运行?你别在浏览器里面运行啊
    moodasmood
        54
    moodasmood  
       2019-06-24 09:44:37 +08:00
    你用 phpstorm 的话,直接在代码文件上右键,运行
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     929 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 18:35 PVG 02:35 LAX 11:35 JFK 14:35
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86