PHP muss Wissenspunkte lernen (wenig Wissen)

PHP中文网
Freigeben: 2023-03-16 20:28:01
Original
1752 Leute haben es durchsucht

Dieser Artikel fasst hauptsächlich einige nützliche Kenntnisse in PHP zusammen und gibt sie als Referenz und zum Lernen weiter. Werfen wir einen Blick auf die detaillierte Einführung:

Bestimmen Sie, ob die PHP-Funktion vorhanden ist

Wenn wir eine benutzerdefinierte Funktion erstellen und die Verwendung variabler Funktionen verstehen, verwenden wir häufig function_exists, um sicherzustellen, dass die vom Programm aufgerufene Funktion vorhanden ist, um festzustellen, ob die Funktion vorhanden ist. Dieselbe method_exists kann verwendet werden, um zu erkennen, ob eine Klassenmethode vorhanden ist.

<?php
function func() {
}
if (function_exists(&#39;func&#39;)){
 echo &#39;exists&#39;;
}
   ?>
Nach dem Login kopieren

Unabhängig davon, ob die Klasse definiert ist, können Sie class_exists verwenden

class MyClass{
}
// 使用前检查类是否存在
if (class_exists(&#39;MyClass&#39;)) {
 $myclass = new MyClass();
}
Nach dem Login kopieren

Es gibt viele solcher Prüfmethoden in PHP, z B. ob die Datei existiert, file_exists usw.

$filename = &#39;test.txt&#39;;
if (!file_exists($filename)) {
 echo $filename . &#39; not exists.&#39;;
}
Nach dem Login kopieren

2. Variablenfunktionen von PHP-Funktionen

Die sogenannte Variablenfunktion bedeutet, die Funktion über den Wert aufzurufen der Variablen, da der Wert der Variablen veränderlich ist, sodass Sie verschiedene Funktionen aufrufen können, indem Sie den Wert einer Variablen ändern. Es wird häufig in Rückruffunktionen, Funktionslisten oder zum Aufrufen verschiedener Funktionen basierend auf dynamischen Parametern verwendet. Die Methode zum Aufrufen einer Variablenfunktion besteht darin, dem Variablennamen Klammern hinzuzufügen.

function name() {
 echo &#39;jobs&#39;;
}
$func = &#39;name&#39;;
$func(); //调用可变函数
Nach dem Login kopieren

Variablenfunktionen können auch zum Aufrufen von Methoden für Objekte verwendet werden

class book {
 function getName() {
  return &#39;bookname&#39;;
 }
}
$func = &#39;getName&#39;;
$book = new book();
$book->$func();
Nach dem Login kopieren

Statische Methoden Dynamisch Aufrufe können auch über Variablen erfolgen

$func = &#39;getSpeed&#39;;
$className = &#39;Car&#39;;
echo $className::$func(); //动态调用静态方法
   
//静态方法中,$this伪变量不允许使用。可以使用self,parent,static在内部调用静态方法与属性。  
class Car {
 private static $speed = 10;
  
 public static function getSpeed() {
  return self::$speed;
 }
  
 public static function speedUp() {
  return self::$speed+=10;
 }
}
class BigCar extends Car {
 public static function start() {
  parent::speedUp();
 }
}
 
BigCar::start();
echo BigCar::getSpeed();
Nach dem Login kopieren

3. Erweiterte Funktionen von PHP-Klassen und -Objekten

Objektvergleich, wenn zwei Objekte derselben Klasse vorhanden sind einer Instanz gleich sind, können Sie zur Beurteilung den Vergleichsoperator == verwenden. Wenn Sie beurteilen müssen, ob zwei Variablen auf dasselbe Objekt verweisen, können Sie zur Beurteilung den Kongruenzoperator === verwenden.

class Car {
}
$a = new Car();
$b = new Car();
if ($a == $b) echo &#39;==&#39;; //true
if ($a === $b) echo &#39;===&#39;; //false
对象复制,在一些特殊情况下,可以通过关键字clone来复制一个对象,这时__clone方法会被调用,通过这个魔术方法来设置属性的值。 
class Car {
 public $name = &#39;car&#39;;
  
 public function __clone() {
  $obj = new Car();
  $obj->name = $this->name;
 }
}
$a = new Car();
$a->name = &#39;new car&#39;;
$b = clone $a;
var_dump($b);
Nach dem Login kopieren

Objektserialisierung: Das Objekt kann über die Serialisierungsmethode in eine Zeichenfolge serialisiert, zum Speichern oder Übertragen von Daten verwendet und dann bei Bedarf an die Serialisierung übergeben werden deserialisiert die Zeichenfolge zur Verwendung in ein Objekt.

class Car {
 public $name = &#39;car&#39;;
}
$a = new Car();
$str = serialize($a); //对象序列化成字符串
echo $str.&#39;<br>&#39;;
$b = unserialize($str); //反序列化为对象
var_dump($b);
Nach dem Login kopieren

4. Ermitteln Sie die Länge der Zeichenfolge im PHP-Format

//php中有一个神奇的函数,可以直接获取字符串的长度,这个函数就是strlen()。
$str = &#39;hello&#39;;
$len = strlen($str);
echo $len;//输出结果是5
   
//strlen函数对于计算英文字符是非常的擅长,但是如果有中文汉字,要计算长度该怎么办?
//可以使用mb_strlen()函数获取字符串中中文长度。 
$str = "我爱你";
echo mb_strlen($str,"UTF8");//结果:3,此处的UTF8表示中文编码是UTF8格式,中文一般采用UTF8编码
Nach dem Login kopieren

5 string of string

Wenn es einen String $str = '99.9'; gibt, wie kann dieser String 99,90 werden?

Wir müssen PHPs formatierte Zeichenfolgenfunktion sprintf() verwenden

Funktionsbeschreibung: sprintf (Format, zu konvertierende Zeichenfolge)

Rückgabe: gut formatiert Die Zeichenfolge

$str = &#39;99.9&#39;;
$result = sprintf(&#39;%01.2f&#39;, $str);
echo $result;//结果显示99.90
Nach dem Login kopieren

Erklären Sie, was das Format

%01.2f im obigen Beispiel bedeutet?

1. Dieses %-Symbol bedeutet den Anfang. Wenn es vorne steht, bedeutet das, dass das angegebene Format begonnen hat. Das heißt, das „Startzeichen“, bis das „Konvertierungszeichen“ erscheint, endet das Format.

2. Was auf das %-Symbol folgt, ist 0, ein „Lückenfüllzeichen“, was bedeutet, dass eine leere Position mit 0 aufgefüllt wird.

3. Was auf 0 folgt, ist 1. Diese 1 legt fest, dass alle Stringbelegungen mehr als 1 Ziffer haben müssen (der Dezimalpunkt ist auch eine Ziffer).

Wenn Sie 1 in 6 ändern, beträgt der Wert von $result 099,90

Da nach dem Komma zwei Ziffern stehen müssen, ergibt 99,90 insgesamt 5 Stellen, jetzt brauchen wir 6 Platzhalter, also füllen Sie sie mit Nullen.

4. Die .2 (Punkt 2) nach %01 ist leicht zu verstehen. Sie bedeutet, dass die Zahl nach dem Komma zweistellig sein muss. Wenn der Wert von $str zu diesem Zeitpunkt 9,234 beträgt, beträgt der Wert von $result 9,23.

Warum fehlt 4? Denn hinter dem Komma darf und darf es nach den oben genannten Regelungen nur 2 Stellen haben. Der Wert von $str belegt jedoch 3 Nachkommastellen, sodass die Mantisse 4 entfernt wird und nur 23 übrig bleiben.

5. Abschließend endet mit f „Konvertierungszeichen“.

6. PHP-String-Escape-Funktion

PHP-String-Escape-Funktion addslashes()

Funktionsbeschreibung: Wird zum Escapezeichen von Sonderzeichen verwendet und gibt einen String zurück.

Rückgabe Wert: eine maskierte Zeichenfolge

$str = "what&#39;s your name?";
echo addslashes($str);//输出:what\&#39;s your name?
Nach dem Login kopieren


Das obige ist der detaillierte Inhalt vonPHP muss Wissenspunkte lernen (wenig Wissen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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