您如何解决此通知:未初始化的字符串偏移量:带斜杠的0?

用户名

当我将主题上传到WordPress时,我会在选项页面中收到此通知:

未初始化的字符串偏移量:0

这是我的代码:

function name_of_function ( $args ) {
    extract( $args );
    $option_name = 'the_theme_options';
    $options = get_option( $option_name );
    switch ( $type ) {  
        case 'text':
            $options[$id] = stripslashes( $options[$id] );
            $options[$id] = esc_attr( $options[$id] );
            echo "<input class='regular-text$class' type='text' id='$id' name='" . $option_name . "[$id]' value='$options[$id]'>";
            echo ( $desc != '' ) ? "<br><span class='description'>$desc</span>" : "";
        break;

当我保存时,通知消失了。

我尝试添加isset,如下所示(我刚开始收到Notice:undefined index):

$options[$id] = stripslashes( isset( $options[$id] );

错误消失了,但是无法保存。

然后我将isset添加到以下行:

$options[$id] = esc_attr( isset( $options[$id] ) );

还是没用。

我尝试删除此行,但仍然出现错误:

$options[$id] = stripslashes( $options[$id] );

我什至尝试了这个:

if ( isset( $options[$id] ) {
    $options[$id] = stripslashes( $options[$id] );
}

我现在知道我尝试过的某些事情没有道理。

我一直在找几个小时。阅读一些文档。似乎找不到解决方案。

lix药

$options在这种情况下字符串,而不是数组。您正在尝试将其视为数组,这是行不通的。您代码中的逻辑将永远无法正常工作;目前尚不清楚您要做什么$options[$id]

你得到的原因

未初始化的字符串偏移量:0

$id未在任何地方初始化的,因此PHP将其视为0您说的是:“查看此字符串($ options),并在键0处获取数组值”,PHP举起手来,因为这没有任何意义。

您的各种解决方案由于其他几个原因而无法使用。stripslashes( isset( $options[$id] );失败的原因是(1)$options[$id]不存在,并且(2)stripslashes()采用字符串参数,但是您将其传递给布尔值。同样的问题esc_attr( isset( $options[$id] ) );

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何解决此错误:(警告:非法字符串偏移)和(注意:未初始化的字符串偏移:0)

我如何解决 TinyButStrong 中的“未初始化的字符串偏移:”错误

PHP注意:未初始化的字符串偏移量:-1

注意:未初始化的字符串偏移量:1

注意:未初始化的字符串偏移量:-1

将字符串视为字符数组是否会返回“未初始化的字符串偏移量”通知?

一切正常,但我有:注意:未初始化的字符串偏移量,

从mysql中包含字符串的列初始化偏移量

如何解决这些非法的字符串偏移量警告?

PHP 注意:未初始化的字符串偏移

如何解决“初始化字符串的格式不符合从索引0开始的规范”

如何修复此代码上的“strpos():字符串中不包含偏移量”

如何忽略字符串日期时间的偏移量

如何使用UTC偏移量转换字符串

php-如何解决此非法的偏移量类型

如何解决错误“初始化字符串的格式不符合从索引100开始的规范”

使用创建时区的偏移量初始化Moment

如何解决与当前可用偏移量不同的当前已提交偏移量?

如何解决未初始化的常量搜索::错误

如何通过Javascript获取句子中选定的字符串偏移量开始和偏移量结束

在PHP中发生了字符串偏移量强制转换的正确解决方案

带双引号的字符串初始化

非法字符串偏移量未定义偏移量:2

PHP 未定義偏移量:0 執行字符串追加時

在字符串中查找元素的偏移量

Laravel-非法字符串偏移量

警告:字符串偏移量非法

非法的字符串偏移量警告PHP

CakePHP非法字符串偏移量