簡體   English   中英

使用變量時:致命錯誤:不能將字符串偏移量用作數組

[英]when using variable: Fatal error: Cannot use string offset as an array

以下代碼:

$field = 'field_total_comments_added';
$current_user_count = $user_data->$field['und']['0']['value'];

返回錯誤:致命錯誤:不能將字符串偏移用作數組

如果我只是使用:

$current_user_count = $user_data->field_total_comments_added['und']['0']['value'];

代碼工作得很好。 為了使用一些自定義功能,我必須使用第一個代碼塊中顯示的變量。 我怎么解決這個問題?

如果問題不明確,請告訴我。

提前感謝你的幫助

您可以使用以下常見解決方法:

$current_user_count = $user_data->{$field}['und']['0']['value'];

這基本上強制變量屬性名稱優先於數組訪問運算符。

嘗試:

$field = 'field_total_comments_added';
$current_user_count = ($user_data->$field)['und']['0']['value'];

它可能只適用於PHP 5.4。 對於早期版本,還可以嘗試:

$field = 'field_total_comments_added';
$item = $user_data->$field;
$current_user_count = $item['und']['0']['value'];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM