为什么我的 PHP 函数代码出现未定义索引错误

Why do I get undefined index error on my PHP function code

我什至尝试过使用 "isset",但遗憾的是它不起作用。

function pageBanner($args=NULL){
if(!$args['title']){
    $args['title']=get_the_title();
}

if (!$args['subtitle']){
    $args['subtitle'] = get_field('page_banner_subtitle');
}

if (!$args['photo']){
    if (get_field('page_banner_background_image')){
        $args['photo'] = get_field('page_banner_background_image')['sizes']['pageBanner'];
    }
    else {
        $args['photo']=get_theme_file_uri('images/pages.jpg');
    }
}?>

我不知道我的问题 if(!$args['title']){ $args['title']=get_the_title(); 它是有效的,但字幕和照片是未定义的索引。

尝试这样的事情:

function pageBanner($args = null)
{
    if ($args === null) {
        $args = [];
    }

    if (!isset($args['title'])) {
        $args['title'] = get_the_title();
    }

    if (!isset($args['subtitle'])) {
        $args['subtitle'] = get_field('page_banner_subtitle');
    }

    if (!isset($args['photo'])) {
        $field = get_field('page_banner_background_image');
        if ($field && isset($field['sizes']['pageBanner'])) {
            $args['photo'] = $field['sizes']['pageBanner'];
        } else {
            $args['photo'] = get_theme_file_uri('images/pages.jpg');
        }
    }
}