-1

cronjobs レポートにこのエラーがあります

PHP の厳格な基準: 28 行目の /home/admin/domains/DOMAIN.com/public_html/birthdate.php の空の値からデフォルト オブジェクトを作成する 厳格な基準: /home/admin/domains/DOMAIN.com の空の値からデフォルト オブジェクトを作成する/public_html/birthdate.php 28 行目

そして私のコード:

28-   $D->user_birthdate = array();
29-   $latest_members_arr = $network->get_user_birthdate();
30-   foreach($latest_members_arr as $usr)
40-   {
41-     $D->user_birthdate[]    = $network->get_user_by_id($usr);
42-   }
43-    $num    = 30;
44-   $D->user_birthdate    = array_slice($D->user_birthdate, 0, $num);

この問題を解決するにはどうすればよいですか?

4

3 に答える 3

5

コードの先頭に以下の行を追加します。

$D =  new stdClass();
$D->user_birthdate = array();

$D存在しないため、エラーが発生します。新しい StdClass オブジェクトを作成する必要があります。stdClass は、php の一般的な空のクラスです。続きを読む.

$D オブジェクトに特定のタイプ (オブジェクトのタイプ) がある場合は、必ずそれを使用してください。例:

$D =  new dClass();

ここ$DにクラスのオブジェクトがありますdClass()

于 2013-01-08T16:26:08.767 に答える
2

おそらく $D はnullですか?代わりに配列を使用します。

$birth_dates = array();
$latest_members_arr = $network->get_user_birthdate();
foreach($latest_members_arr as $usr)
{
   birth_dates[]    = $network->get_user_by_id($usr);
}

または、$D が null の場合に標準クラスを使用することを検討し、これをコードの先頭に追加します。

if (empty($D)) {
$D = new stdClass();
}
于 2013-01-08T16:24:42.400 に答える
1

$D定義されていません。値を割り当てる前に、キーワードを使用して何かに設定するnew(または以前にインスタンス化されたオブジェクトからコピーする) 必要があります。

于 2013-01-08T16:24:44.357 に答える