Heim > Backend-Entwicklung > PHP-Tutorial > Beispielcode für die Knoten-ID des Themas „dedecms', der nicht wiederholt werden kann

Beispielcode für die Knoten-ID des Themas „dedecms', der nicht wiederholt werden kann

黄舟
Freigeben: 2023-03-07 08:06:01
Original
1364 Leute haben es durchsucht

In diesem Artikel wird hauptsächlich die Lösung für das Problem vorgestellt, dass die spezielle Knoten-ID von dedecms nicht wiederholt werden kann.

Download-Adresse der dedecms-Vorlage: www.php.cn/xiazai/code/dedecms

Ich habe etwas besonders Deprimierendes entdeckt, als ich an einem speziellen Thema arbeitete. Es wurden 5 Knoten in jedem Knoten gefiltert und in die Datenbank geschrieben Funktion.

Schließlich wurde festgestellt, dass der Schuldige der folgende Code war:

if(is_array($ids))
            {
                foreach($ids as $mid)
                {
                    $mid = trim($mid);
                    if($mid=="") continue;
                    if(!isset($arcids[$mid]))
                    {
                        if($okids=="")
                        {
                            $okids .= $mid;
                        }
                        else
                        {
                            $okids .= ",".$mid;
                        }
                        $arcids[$mid] = 1;
                    }
                }
            }
Nach dem Login kopieren

s Darunter befindet sich in der foreach-Schleife ein Isset-Urteil, das filtert einige doppelte IDs auslesen;
Ich weiß nicht, wie die -Variable von DEDE $arcids gesetzt ist. Nach der foreach-Schleife werden die allen Knoten zugewiesenen IDs in das Array< eingetragen 🎜>. Zu diesem Zweck lautet meine Lösung wie folgt:
Deduplizieren Sie zunächst die Array-Variable $ids:

$ids = array_unique($ids);
Nach dem Login kopieren
Ändern Sie dann isset in is_array, um festzustellen, ob es sich um ein Array handelt

The Der vollständige Code lautet wie folgt:

$ids = array_unique($ids);
            if(is_array($ids))
            {
                foreach($ids as $mid)
                {
                    $mid = trim($mid);
                    if($mid=="") continue;
                    if(!is_array($arcids[$mid]))
                    {
                        if($okids=="")
                        {
                            $okids .= $mid;
                        }
                        else
                        {
                            $okids .= ",".$mid;
                        }
                        $arcids[$mid] = 1;
                    }
                }
            }
Nach dem Login kopieren
Ich weiß nicht, ob eine solche Änderung weitere „Nebenwirkungen“ haben wird! Ich hoffe, ihr könnt mir alle einen Rat geben!

Das obige ist der detaillierte Inhalt vonBeispielcode für die Knoten-ID des Themas „dedecms', der nicht wiederholt werden kann. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
id
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage