Vergessen Sie unbedingt diese 5 schlechten Gewohnheiten in der PHP-Programmierung!

coldplay.xixi
Freigeben: 2023-04-09 16:02:01
nach vorne
4422 Leute haben es durchsucht

Vergessen Sie unbedingt diese 5 schlechten Gewohnheiten in der PHP-Programmierung!

【Verwandte Lernempfehlungen: PHP-Grafik-Tutorial

Diese 5 schlechten Gewohnheiten in der PHP-Programmierung müssen geändert werden PHP ist die beste Sprache der Welt!

Vor der Schleife testen, ob das Array leer ist?

$items = [];// ...if (count($items) > 0) {    foreach ($items as $item) {        // process on $item ...
    }}复制代码
Nach dem Login kopieren

foreach-Schleifen oder Array-Funktionen (array_*) können leere Arrays verarbeiten. foreach循环或数组函数(array_*)可以处理空数组。

  • 不需要先进行测试
  • 可以减少一层缩进
$items = [];// ...foreach ($items as $item) {    // process on $item ...}复制代码
Nach dem Login kopieren

将方法的所有内容封装在if语句中

function foo(User $user) {    if (!$user->isDisafunction foo(User $user) {    if (!$user->isDisabled()) {        // ...
        // long process
        // ...
    }
}bled()) {        // ...
        // long process
        // ...
    }
}复制代码
Nach dem Login kopieren

这不是特定于PHP的,但我经常看到它。你可以通过提前返回,来减少缩进级别的极简代码! 该函数的所有“有用”主体现在处于第一个缩进级别

function foo(User $user) {    if ($user->isDisabled()) {        return;
    }    // ...
    // long process
    // ...}复制代码
Nach dem Login kopieren

多次调用isset方法

$a = null;
$b = null;
$c = null;// ...if (!isset($a) || !isset($b) || !isset($c)) {    throw new Exception("undefined variable");
}// orif (isset($a) && isset($b) && isset($c) {    // process with $a, $b et $c}// or $items = [];//...if (isset($items['user']) && isset($items['user']['id']) {    // process with $items['user']['id']}复制代码
Nach dem Login kopieren

我们经常需要检查是否已定义变量(而不是null)。 在PHP中,我们可以使用isset函数来做到这一点。而且该函数一次可以接受多个参数!

$a = null;
$b = null;
$c = null;// ...if (!isset($a, $b, $c)) {    throw new Exception("undefined variable");
}// orif (isset($a, $b, $c)) {    // process with $a, $b et $c}// or $items = [];//...if (isset($items['user'], $items['user']['id'])) {    // process with $items['user']['id']}复制代码
Nach dem Login kopieren

echo方法和sprintf结合使用

$name = "John Doe";echo sprintf('Bonjour %s', $name);复制代码
Nach dem Login kopieren

这段代码可能在微笑,但是我碰巧写了一段时间。而且我仍然看到很多!除了结合echosprintf,我们可以简单地使用printf方法。

$name = "John Doe";
printf('Bonjour %s', $name);复制代码
Nach dem Login kopieren

通过组合两种方法检查数组中键的存在

$items = [    'one_key' => 'John',    'search_key' => 'Jane',
];if (in_array('search_key', array_keys($items))) {    // process}复制代码
Nach dem Login kopieren

最后一个错误我看到的往往是联合使用in_arrayarray_keys

  • Kein vorheriger Test erforderlich
  • Sie können eine Einrückungsebene reduzieren
$items = [    'one_key' => 'John',    'search_key' => 'Jane',
];if (array_key_exists('search_key', $items)) {    // process}复制代码
Nach dem Login kopieren

Ändern Sie die Alles ist in einer if-Anweisung verpackt.

if (isset($items['search_key'])) {    // process}复制代码
Nach dem Login kopieren
Das ist nicht PHP-spezifisch, aber ich sehe es ständig. Sie können die Einrückungsebene von minimalistischem Code reduzieren, indem Sie früher zurückkehren! Alle „nützlichen“ Körper der Funktion befinden sich jetzt auf der ersten Einrückungsebene

rrreee

Mehrere Aufrufe der isset-Methode rrreee
Wir müssen oft überprüfen if Die Variable ist definiert (nicht null). In PHP können wir dies mit der Funktion isset tun. Und die Funktion kann mehrere Parameter gleichzeitig akzeptieren!

rrreee

Die echo-Methode wird in Kombination mit sprintf verwendet rrreeeDieser Code lächelt vielleicht, aber ich habe es zufällig getan schreib mal eine Zeit. Und ich sehe immer noch viel davon! Anstatt echo und sprintf zu kombinieren, können wir einfach die Methode printf verwenden. rrreee

Überprüfen der Existenz eines Schlüssels in einem Array durch Kombination zweier MethodenrrreeeDer letzte Fehler, den ich sehe, ist oft die kombinierte Verwendung von in_array und array_keys. All dies kann durch array_key_exists ersetzt werden.

rrreeeWir können isset auch verwenden, um zu prüfen, ob der Wert null ist. rrreee
Vielen Dank fürs Lesen. Wenn es für Sie hilfreich ist, folgen Sie bitte dem Nugget-Konto „CRMEB“. Auf Code Cloud gibt es unsere Open-Source-Mall-Projekte und Knowledge-Payment-Projekte, die alle auf Basis von PHP entwickelt wurden. Sie können sie gerne zum Lernen und Recherchieren nutzen.

🎜🎜Verwandte Lernempfehlungen: 🎜🎜🎜php-Programmierung🎜🎜🎜(Video)🎜🎜🎜🎜

Das obige ist der detaillierte Inhalt vonVergessen Sie unbedingt diese 5 schlechten Gewohnheiten in der PHP-Programmierung!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:juejin.im
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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!