この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 13776|答える: 1

[相互援助] ecshopの418行目のIncludes\cls_template.phpエラーの修正方法

[リンクをコピー]
掲載地 2015/02/20 17:20:02 | | |

以前直面した問題について、どう解決すればいいのか非常に悩んでいましたが、ついに解決策を見つけました。ここで皆さんと共有します。問題は以下の通りです:
厳格な基準:変数のみを418行目のupload\includes\cls_template.php参照で渡すべきです
418行目:$tag_sel = array_shift(explode(' ', $tag));

対策1:
バージョン5.3以降の問題は、構成にも関連しているはずです。418行目がこの文を2つの文に分割している限り、問題はありません $tag_sel = array_shift(explode(' ', $tag)); 変更内容:

$tag_arr = explode(' ', $tag); $tag_sel = array_shift($tag_arr);
array_shiftのパラメータは参照によって渡されるため、デフォルトで5.3を超える特定の変数のみを渡せ、関数を通じて値を返すことはできません
同様に、関数のネストエラーに遭遇した場合は別々に書けば、エラーは自然に解決されます

として:
関数get_dyna_libs($theme, $tmp)
{
$extsub = 爆発('.', $tmp);
$ext = 終わり($extsub);
$tmp = basename($tmp,".$ext");
$sql = 「SELECT region, library, sort_order, id, number, type」
「FROM」 $GLOBALS['ecs']->table('template')
「ここで theme = '$theme' およびファイル名 = '" 。 $tmp。 「' AND タイプ > 0 AND は注釈=''"
『地域別、図書館、sort_order』;
$res = $GLOBALS['db']->getAll($sql);
$dyna_libs = array();
foreach($res as $row)
{
$dyna_libs[$row['region']][$row['library']][] = array(
'id' => $row['id'],
「数」 => $row['数']」、
'type' => $row['type']
);
}
返$dyna_libs;
}

set $ext = end(explode('.', $tmp));
変化
$extsub = 爆発('.', $tmp);
$ext = 終わり($extsub);

解決策2(マスキングエラー):

または次のように設定すれば:error_reporting = E_ALL | E_STRICT
php.iniで利用可能な設定は以下の通りです:
error_reporting = 4 E_ALL | E_STRICT

これはコーディング標準の警告が表示されることを意味します。
Joomlaはエラー出力のキャンセルを推奨しており、必要に応じてデバッグに切り替えるべきです
error_reporting = E_ALL & ~E_NOTICE

問題は解決しました。




先の:QQ宇宙情報APIインターフェース
次に:どの個人ブログシステムが優れているか、それについて話しましょう
掲載地 2015/02/21 21:13:21 |
PHPバージョンを直接PHP5.2.xに縮小することが推奨されています
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com