Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/244.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP不能回显每个数组_Php_Arrays_Wordpress - Fatal编程技术网

PHP不能回显每个数组

PHP不能回显每个数组,php,arrays,wordpress,Php,Arrays,Wordpress,我无法对每个阵列进行回音。不知道我做错了什么。如何回显每个阵列?我尝试过下面这样的方法,但没有成功 function simple_social_sharing( $attr_twitter = null, $attr_items = null ) { // parse variables $twitter_account = $attr_twitter; $item_toggles = $attr_items; // get post content and

我无法对每个阵列进行回音。不知道我做错了什么。如何回显每个阵列?我尝试过下面这样的方法,但没有成功

function simple_social_sharing( $attr_twitter = null, $attr_items = null ) {

    // parse variables
    $twitter_account = $attr_twitter;
    $item_toggles = $attr_items;

    // get post content and urlencode it
    global $post;
    $browser_title_encoded = urlencode( trim( wp_title( '', false, 'right' ) ) );
    $page_title_encoded = urlencode( get_the_title() );
    $page_url_encoded = urlencode( get_permalink($post->ID) );

    // create share items array
    $share_items = array ();

    // set each item
    $item_facebook = array(
        "class" => "facebook",
        "href" => "http://www.facebook.com/sharer.php?u={$page_url_encoded}&t={$browser_title_encoded}",
        "text" => "Share on Facebook"
    );
    $item_twitter = array(
        "class" => "twitter",
        "href" => "http://twitter.com/share?text={$page_title_encoded}&url={$page_url_encoded}&via={$twitter_account}",
        "text" => "Share on Twitter"
    );
    $item_google = array(
        "class" => "google",
        "href" => "http://plus.google.com/share?url={$page_url_encoded}",
        "text" => "Share on Google+"
    );

    // test whether to display each item
    if($item_toggles) {
        // explode into array
        $item_toggles_array = explode( ",", $item_toggles );
        // set each item on or off
        $show_facebook = $item_toggles_array['0'];
        $show_twitter = $item_toggles_array['1'];
        $show_google = $item_toggles_array['2'];
    }
    else {
        $display_all_items = 1;
    }

    // form array of items set to 1
    if( $show_facebook==1 || $display_all_items ) {
        array_push( $share_items, $item_facebook );
    }
    if( $show_twitter==1 || $display_all_items) {
        array_push( $share_items, $item_twitter );
    }
    if( $show_google==1 || $display_all_items) {
        array_push( $share_items, $item_google );
    }

    // if one or more items
    if ( ! empty( $share_items ) ) {
        // create output
        $share_output = "<ul class=\"ss-share\">\n";
        foreach ( $share_items as $share_item ) {
            $share_output .= "<li class=\"ss-share-item\">\n";  
            $share_output .= "<a class=\"ss-share-link ico-{$share_item['class']}\" href=\"{$share_item["href"]}\" rel=\"nofollow\" target=\"_blank\">{$share_item['text']}</a>\n"; 
            $share_output .= "</li>\n"; 
        }
        $share_output .= "</ul>";
        // echo output
        echo $share_output;
    }
}

// add shortcode to output buttons
function simple_social_sharing_shortcode( $atts, $content = null ) {
    // parse variables / set defaults
    extract( shortcode_atts( array(
        'twitter' => '',
        'display' => '1,1,1',
    ), $atts ) );
    // output buttons
    ob_start();
    simple_social_sharing( $twitter, $display );
    $output_string = ob_get_contents();
    ob_end_clean();
    return force_balance_tags( $output_string );
}
功能简单的社交共享($attr\u twitter=null,$attr\u items=null){
//解析变量
$twitter\u account=$attr\u twitter;
$item\u切换=$attr\u items;
//获取帖子内容并对其进行URL编码
全球$员额;
$browser_title_encoded=urlencode(修剪(wp_title('',false,'right'));
$page_title_encoded=urlencode(获取_title());
$page_url_encoded=urlencode(get_permalink($post->ID));
//创建共享项数组
$share_items=array();
//设置每个项目
$item_=数组(
“类”=>“facebook”,
“href”=>”http://www.facebook.com/sharer.php?u={$page\u url\u encoded}&;t={$browser\u title\u encoded}”,
“文本”=>“在Facebook上共享”
);
$item\u twitter=array(
“类”=>“推特”,
“href”=>”http://twitter.com/share?text={$page\u title\u encoded}&;url={$page\u url\u encoded}&;via={$twitter\u account}”,
“文本”=>“在Twitter上共享”
);
$item\u google=array(
“类”=>“谷歌”,
“href”=>”http://plus.google.com/share?url={$page\u url\u encoded}“,
“文本”=>“在Google+上共享”
);
//测试是否显示每个项目
如果($item_切换){
//爆炸成阵列
$item\u toggles\u数组=分解(“,”,$item\u toggles);
//打开或关闭每个项目
$show_facebook=$item_切换_数组['0'];
$show_twitter=$item_切换_数组['1'];
$show_google=$item_切换_数组['2'];
}
否则{
$display\u all\u items=1;
}
//表单项数组设置为1
如果($show_facebook==1 | |$display_all_项目){
数组推送($share\u items,$item\u facebook);
}
如果($show_twitter==1 | |$display_all_项目){
数组推送($share\u items,$item\u twitter);
}
如果($show_google==1 | |$display_all_项目){
数组推送($share\u items,$item\u google);
}
//如果一个或多个项目
如果(!空($share_items)){
//创建输出
$share\U output=“
    \n”; foreach($share\u项目作为$share\u项目){ $share\U output.=“
  • \n”; $share_输出=“\n”; $share\U output.=“
  • \n”; } $share_输出=“
”; //回波输出 echo$share_输出; } } //向输出按钮添加快捷代码 函数简单\社交\共享\快捷码($atts,$content=null){ //解析变量/设置默认值 提取(短码)附件(数组)( '推特'=>'', '显示'=>'1,1,1', )美元(附件);; //输出按钮 ob_start(); 简单的社交分享($twitter,$display); $output_string=ob_get_contents(); ob_end_clean(); 返回力\平衡\标签($output\字符串); }
开发人员调用函数也不起作用

<?php simple_social_sharing('twitteraccount', '1,1,1'); ?>

我试图用这种方法调用每个数组,但它是错误的

<?php simple_social_sharing([1]); ?>

向下,在foreach块中有一个片段:
... href=\“{$share\u项目[“href”]}\”

href周围的双引号会给您带来问题

您需要将其设置为

... href=\“{$share\u item['href']}\”..

函数应返回值,而不回显它

而不是
echo$share\u输出
,您应该让它
返回$share\u输出

回显函数的返回值(如果是数组,则
print\r
it else
Echo
it)以查看输出

<?php echo simple_social_sharing('twitteraccount', '1,1,1'); //NOTE THE 'echo' HERE.. ?>


尝试
var\u dump
查看您的结构。或者
echo'。打印($var,true)。“”
@Kolink
var_dump
在使用$output变量之前给了我空值?>更改了设置,但没有给我任何结果。。我不想把它用在Wordpress上。它应该直接用作PHP