web-dev-qa-db-ja.com

print_r配列の良い方法

DrupalがDevelなどのモジュールに、dsm($array)krumo($array)...などのNice形式で配列を出力できる関数を持っている方法を知っていますか?WordPress print_r($array)を表示する同等の方法またはニースの方法がありますか?

7
emc

私は本当にうまくいくKintプラグインを作成しました。私はDebug Barプラグインとも統合しています。あなたはそれをダウンロードすることができます: http://wordpress.org/extend/plugins/kint-debugger/

WordPress特有のグローバルを手助けするための機能がいくつかあります。

  • dump_wp_query()
  • dump_wp()
  • dump_post()

配列をスタイル付きの折りたたみ可能な形式で印刷するには、次のようにします。

$foo_bar = array(
    'foo' => 'bar',
    'bar' => 'oof',
    'rab' => 'foo'
);
d($foo_bar); //Styled
s($foo_bar); //Un-styled
12
Brian Fegter

あなたは Krumo をWordPress(あるいは任意のPHP app)と共にインストールして使うことができます。 Hikari Krumoプラグインがあります コメントを確認してください、使用を簡単にしてください、あなたがそれを最新のWPで動作させるために手動で修正する必要があるというエラーがあります。 WordPress Debug Barプラグイン もあります。

編集 - 私が最近発見した別の選択肢、 Kint ;スクリーンショット:

Kint screenshot

7
Milo

この種のものについて、私は _ ref _ を書きました(PHP 5.3が必要です)。他の多くの機能の中でも、DocBlockのコメントの内容を表示し、PHP内部のクラス、メソッド、関数をリンクします(リンクはPHPマニュアルを指しています)。それはまたWordPress機能を扱う(リンクは queryposts.com を指す)。

これは、HTMLモードのWordPressのsetup段階での$GLOBALSの出力です(functions.phpのr($GLOBALS);)。

enter image description here

5
onetrickpony

プラグインを使用することもできます デバッグオブジェクト 。スクリプトとスタイルもリストします。プラグインには、開発とデバッグのためのより多くのオプションがありますが、この機能もあります。

代替手段はこの情報源であり、このトピックに関する情報と投稿を見つける ここ

add_action('wp_footer', 'fb_urls_of_enqueued_stuff');
add_action('admin_footer', 'fb_urls_of_enqueued_stuff');
function fb_urls_of_enqueued_stuff( $handles = array() ) {
    global $wp_scripts, $wp_styles;
    // scripts
    foreach ( $wp_scripts -> registered as $registered )
        $script_urls[ $registered -> handle ] = $registered -> src;
    // styles
    foreach ( $wp_styles -> registered as $registered )
        $style_urls[ $registered -> handle ] = $registered -> src;
    // if empty
    if ( empty( $handles ) ) {
        $handles = array_merge( $wp_scripts -> queue, $wp_styles -> queue );
        array_values( $handles );
    }
    // output of values
    $output = '';
    foreach ( $handles as $handle ) {
        if ( ! empty( $script_urls[ $handle ] ) )
            $output .= $script_urls[ $handle ] . '<br />';
        if ( ! empty( $style_urls[ $handle ] ) )
            $output .= $style_urls[ $handle ] . '<br />';
    }
    echo $output;
}
2
bueltge

なぜxdebugを使わないのですか?

デフォルトでは、かなりきれいに見えます。

enter image description here

http://code.google.com/p/kint/ というKintもありますが、ドロップダウンのほうがわかりにくいので、xdebugの全出力を見てください。

2
Wyck

print_r()<pre>タグで囲むと、きれいに出力されます。あなたがそれより少し良い診断を探しているなら、 ブラックボックス と@Miloによって投稿されたデバッグバーは私の得点です。

2
mor7ifer