Heim Backend-Entwicklung PHP-Tutorial 使用ltrace工具跟踪PHP库函数调用的方法_php技巧

使用ltrace工具跟踪PHP库函数调用的方法_php技巧

May 16, 2016 pm 07:53 PM
跟踪

本文实例讲述了使用ltrace工具跟踪PHP库函数调用的方法。分享给大家供大家参考,具体如下:

可能大家已经很熟悉使用strace来跟踪系统调用,今天介绍一个跟踪库函数的利器ltrace

比如我有这么一段PHP代码

test.php:

<&#63;php
 $y = '1380';
 $arr = array();
 for($i = 0; $i < 2000; $i ++){
   $arr[] = "{$i}"; //故意用引号包起来设成字符串
 }
 for($i = 0; $i < 2000; $i ++){
   if(!in_array($y, $arr)) continue;
 }
&#63;>

Nach dem Login kopieren

ltrace -c /usr/local/php/bin/php test.php (-c表示汇总)

会看到输出如下:

% time   seconds usecs/call   calls   function
------ ----------- ----------- --------- --------------------
95.02  7.417240     368   20146 strtol
2.15  7.160390     413   17316 memcpy
1.63  5.522641     240   22966 free
 0.67  2.275374   2275374     1 curl_global_cleanup
 0.54  2.235466     617   3618 __ctype_tolower_loc
 0.16  2.123547    1194   1778 strrchr
 0.17  1.532224     67   22836 malloc
 0.29  0.382083     67   5678 strlen

Nach dem Login kopieren

可以看到 strtol几乎用去了执行时间的95.02%,瓶颈就找出来了。及PHP会在in_array()测试时试图将字符串行数字转换为long,这会耗费大量时间。所以只要将字符串都转换为整形即可大幅度提高效率。

ltrace真心是个好工具

希望本文所述对大家PHP程序设计有所帮助。

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Pfadverfolgung und Raytracing für visuelle Spieleffekte Pfadverfolgung und Raytracing für visuelle Spieleffekte Feb 19, 2024 am 11:36 AM

Die Entscheidung, Path Tracing oder Raytracing zu verwenden, ist für Spieleentwickler eine entscheidende Entscheidung. Obwohl beide optisch eine gute Leistung erbringen, gibt es einige Unterschiede in der praktischen Anwendung. Daher müssen Spielebegeisterte die Vor- und Nachteile beider sorgfältig abwägen, um festzustellen, welche Technologie besser geeignet ist, um die gewünschten visuellen Effekte zu erzielen. Was ist Raytracing? Raytracing ist eine komplexe Rendering-Technik, mit der die Ausbreitung und Interaktion von Licht in virtuellen Umgebungen simuliert wird. Im Gegensatz zu herkömmlichen Rasterisierungsmethoden erzeugt Raytracing realistische Licht- und Schatteneffekte, indem es den Weg des Lichts verfolgt und so ein realistischeres visuelles Erlebnis bietet. Diese Technologie erzeugt nicht nur realistischere Bilder, sondern simuliert auch komplexere Lichteffekte, wodurch Szenen realistischer und lebendiger wirken. seine Hauptkonzepte

So verwenden Sie die Protokollierung, um die Programmausführung in C# zu verfolgen So verwenden Sie die Protokollierung, um die Programmausführung in C# zu verfolgen Oct 09, 2023 pm 03:51 PM

Für die Verwendung der Protokollierung zum Verfolgen des Programmbetriebs in C# sind spezifische Codebeispiele erforderlich. Einführung: Bei der Entwicklung von Software ist es häufig erforderlich, den Programmbetrieb zu verfolgen und aufzuzeichnen, damit das Problem genau gefunden werden kann, wenn ein Problem auftritt. Die Protokollierung ist ein wichtiges technisches Mittel, mit dem der Betriebsstatus, Fehlerinformationen und Debugging-Informationen des Programms aufgezeichnet werden können, um die Lokalisierung von Abweichungen und die Fehlerbehebung zu erleichtern. In diesem Artikel wird erläutert, wie Sie die Protokollierung verwenden, um den Betrieb des Programms in C# zu verfolgen, und es werden spezifische Codebeispiele bereitgestellt. 1. Auswahl an Protokollierungsbibliotheken In C# gibt es viele hervorragende

Implementierungsmethode der Bestellstatus-Tracking-Funktion des in PHP entwickelten Lebensmitteleinkaufssystems Implementierungsmethode der Bestellstatus-Tracking-Funktion des in PHP entwickelten Lebensmitteleinkaufssystems Nov 02, 2023 pm 02:28 PM

Implementierungsmethode für die Funktion zur Verfolgung des Bestellstatus des in PHP entwickelten Gemüseeinkaufssystems Mit der rasanten Entwicklung des E-Commerce beginnen immer mehr Menschen, Dinge des täglichen Bedarfs online zu kaufen, darunter Zutaten und Gemüse des täglichen Bedarfs. Um den Benutzern den Kauf von Gemüse zu erleichtern, sind viele Gemüseeinkaufssysteme entstanden, die den Benutzern Online-Einkaufs-, Zahlungs- und Lieferdienste bieten. Im Lebensmitteleinkaufssystem ist die Funktion zur Verfolgung des Bestellstatus besonders wichtig, die es Benutzern ermöglicht, den Status ihrer Bestellungen in Echtzeit zu verstehen und so das Einkaufserlebnis des Benutzers zu verbessern. In diesem Artikel wird die Implementierung der in PHP entwickelten Funktion zur Verfolgung des Bestellstatus des Lebensmitteleinkaufssystems vorgestellt.

PHP-Debugging-Tipps: So verwenden Sie die Funktion debug_backtrace, um den Codeausführungspfad zu verfolgen PHP-Debugging-Tipps: So verwenden Sie die Funktion debug_backtrace, um den Codeausführungspfad zu verfolgen Jul 29, 2023 am 10:24 AM

PHP-Debugging-Tipps: So verwenden Sie die Funktion debug_backtrace, um den Codeausführungspfad zu verfolgen. Einführung: Während des Entwicklungsprozesses stoßen Sie häufig auf Situationen, in denen Sie den Codeausführungspfad verfolgen müssen, um herauszufinden, wo der Fehler liegt. PHP bietet eine sehr nützliche Funktion debug_backtrace, mit der Stapelinformationen von Funktionsaufrufen abgerufen werden können, die uns dabei helfen, Fehler aufzuspüren. In diesem Artikel wird die Verwendung der Funktion debug_backtrace vorgestellt und einige Anwendungsbeispiele bereitgestellt. 1. debug_back

Fehlerverfolgung und -protokollierung mithilfe von PHP-Fehlerbehandlungsklassen Fehlerverfolgung und -protokollierung mithilfe von PHP-Fehlerbehandlungsklassen Aug 08, 2023 pm 02:22 PM

Die Verwendung von PHP-Fehlerbehandlungsklassen zur Fehlerverfolgung und Aufzeichnung der Fehlerbehandlung ist ein sehr wichtiger Teil des Entwicklungsprozesses und kann uns dabei helfen, Fehler im Programm zu verfolgen und zu beheben. In PHP können wir integrierte Fehlerbehandlungsfunktionen und benutzerdefinierte Fehlerbehandlungsklassen verwenden, um Fehler zu behandeln, die während der Programmausführung auftreten. In diesem Artikel wird erläutert, wie Sie PHP-Fehlerbehandlungsklassen zur Fehlerverfolgung und -protokollierung verwenden. Zuerst müssen wir eine benutzerdefinierte Fehlerbehandlungsklasse erstellen. Fehlerbehandlungsklassen können von den in PHP integrierten Fehlern erben

Implementierungsleitfaden für UniApp zur Implementierung von Takeaway-Bestellungen und Lieferverfolgung Implementierungsleitfaden für UniApp zur Implementierung von Takeaway-Bestellungen und Lieferverfolgung Jul 04, 2023 am 09:03 AM

Einführung in den UniApp-Leitfaden zur Implementierung von Take-out-Bestellungen und Lieferverfolgung: Mit der rasanten Entwicklung des Take-out-Marktes entscheiden sich immer mehr Menschen dafür, Take-aways zu bestellen und diese über mobile APPs zu liefern, was der Gastronomiebranche mehr Geschäftsmöglichkeiten und Herausforderungen mit sich bringt. Als plattformübergreifendes Entwicklungsframework kann UniApp schnell und effizient plattformübergreifende Anwendungen entwickeln. In diesem Artikel wird erläutert, wie Sie UniApp zum Implementieren von Bestell- und Lieferverfolgungsfunktionen zum Mitnehmen verwenden, und es werden relevante Codebeispiele beigefügt. 1. Anforderungsanalyse Benutzeranmeldung: Benutzer müssen ihre Mobiltelefonnummer angeben bzw

So verwenden Sie PHP und Xunsearch für die Verfolgung von Suchergebnissen und die Protokollanalyse So verwenden Sie PHP und Xunsearch für die Verfolgung von Suchergebnissen und die Protokollanalyse Aug 05, 2023 pm 07:45 PM

So verwenden Sie PHP und Xunsearch für die Verfolgung von Suchergebnissen und die Protokollanalyse. Mit der rasanten Entwicklung des Internets sind Suchmaschinen zu einem unverzichtbaren Bestandteil unseres täglichen Lebens geworden. Ob Einkaufen, akademische Forschung oder Unterhaltungsberatung – Suchmaschinen können uns dabei helfen, die Informationen zu finden, die wir brauchen. Für Suchmaschinenentwickler ist es sehr wichtig, das Suchverhalten der Nutzer zu verstehen und die Qualität der Suchergebnisse zu analysieren. In diesem Artikel wird erläutert, wie Sie PHP und Xunsearch für die Verfolgung von Suchergebnissen und die Protokollanalyse verwenden. Erste,

Methoden und Techniken zum Debuggen und Lösen von Linux-Netzwerksicherheitsproblemen Methoden und Techniken zum Debuggen und Lösen von Linux-Netzwerksicherheitsproblemen Jun 30, 2023 pm 11:13 PM

So debuggen und lösen Sie Netzwerksicherheitsprobleme in Linux-Systemen Mit der rasanten Entwicklung des Internets ist Netzwerksicherheit zu einem immer wichtigeren Thema geworden. Als eines der beliebtesten Betriebssysteme bieten Linux-Systeme gewisse Vorteile bei der Netzwerksicherheit. Allerdings sind auch Linux-Systeme nicht völlig immun gegen Cyberangriffe. Daher ist es wichtig zu wissen, wie man Netzwerksicherheitsprobleme in Linux-Systemen debuggt und löst. In diesem Artikel werden einige häufig auftretende Netzwerksicherheitsprobleme behandelt und einige Vorschläge und Tipps zum Debuggen und Beheben dieser Probleme bereitgestellt.

See all articles