Heim Backend-Entwicklung PHP-Tutorial 经验积累,献给PHP爱好者!!!_PHP

经验积累,献给PHP爱好者!!!_PHP

Jun 01, 2016 pm 12:39 PM
agent os 经验

最近刚刚完成手中的项目,比较闲。来这儿转转,把积累的一些技巧分享给大家!
1、关于PHP重定向
方法一:header("Location: index.php");
方法二:echo "<script>window.location =\"$PHP_SELF\";</script>";
方法三:echo "";

2、获取访问者浏览器
function browse_infor()
{
$browser="";$browserver="";
$Browsers =array("Lynx","MOSAIC","AOL","Opera","JAVA","MacWeb","WebExplorer","OmniWeb");
$Agent = $GLOBALS["HTTP_USER_AGENT"];
for ($i=0; $i{
if (strpos($Agent,$Browsers[$i]))
{
$browser = $Browsers[$i];
$browserver ="";
}
}
if (ereg("Mozilla",$Agent) && !ereg("MSIE",$Agent))
{
$temp =explode("(", $Agent); $Part=$temp[0];
$temp =explode("/", $Part); $browserver=$temp[1];
$temp =explode(" ",$browserver); $browserver=$temp[0];
$browserver =preg_replace("/([\d\.]+)/","\\1",$browserver);
$browserver = " $browserver";
$browser = "Netscape Navigator";
}
if (ereg("Mozilla",$Agent) && ereg("Opera",$Agent))
{
$temp =explode("(", $Agent); $Part=$temp[1];
$temp =explode(")", $Part); $browserver=$temp[1];
$temp =explode(" ",$browserver);$browserver=$temp[2];
$browserver =preg_replace("/([\d\.]+)/","\\1",$browserver);
$browserver = " $browserver";
$browser = "Opera";
}
if (ereg("Mozilla",$Agent) && ereg("MSIE",$Agent))
{
$temp = explode("(", $Agent); $Part=$temp[1];
$temp = explode(";",$Part); $Part=$temp[1];
$temp = explode(" ",$Part);$browserver=$temp[2];
$browserver =preg_replace("/([\d\.]+)/","\\1",$browserver);
$browserver = " $browserver";
$browser = "Internet Explorer";
}
if ($browser!="")
{
$browseinfo = "$browser$browserver";
}
else
{
$browseinfo = "Unknown";
}
return $browseinfo;
}
//调用方法$browser=browseinfo() ;直接返回结果

3、获取访问者操作系统
function osinfo() {
$os="";
$Agent = $GLOBALS["HTTP_USER_AGENT"];
if (eregi('win',$Agent) && strpos($Agent, '95')) {
$os="Windows 95";
}
elseif (eregi('win 9x',$Agent) && strpos($Agent, '4.90')) {
$os="Windows ME";
}
elseif (eregi('win',$Agent) && ereg('98',$Agent)) {
$os="Windows 98";
}
elseif (eregi('win',$Agent) && eregi('nt 5\.0',$Agent)) {
$os="Windows 2000";
}
elseif (eregi('win',$Agent) && eregi('nt',$Agent)) {
$os="Windows NT";
}
elseif (eregi('win',$Agent) && eregi('nt 5\.1',$Agent)) {
$os="Windows XP";
}
elseif (eregi('win',$Agent) && ereg('32',$Agent)) {
$os="Windows 32";
}
elseif (eregi('linux',$Agent)) {
$os="Linux";
}
elseif (eregi('unix',$Agent)) {
$os="Unix";
}
elseif (eregi('sun',$Agent) && eregi('os',$Agent)) {
$os="SunOS";
}
elseif (eregi('ibm',$Agent) && eregi('os',$Agent)) {
$os="IBM OS/2";
}
elseif (eregi('Mac',$Agent) && eregi('PC',$Agent)) {
$os="Macintosh";
}
elseif (eregi('PowerPC',$Agent)) {
$os="PowerPC";
}
elseif (eregi('AIX',$Agent)) {
$os="AIX";
}
elseif (eregi('HPUX',$Agent)) {
$os="HPUX";
}
elseif (eregi('NetBSD',$Agent)) {
$os="NetBSD";
}
elseif (eregi('BSD',$Agent)) {
$os="BSD";
}
elseif (ereg('OSF1',$Agent)) {
$os="OSF1";
}
elseif (ereg('IRIX',$Agent)) {
$os="IRIX";
}
elseif (eregi('FreeBSD',$Agent)) {
$os="FreeBSD";
}
if ($os==') $os = "Unknown";
return $os;
}
//调用方法$os=os_infor() ;

4、文件格式类
$mime_types = array(
'gif' => 'image/gif',
'jpg' => 'image/jpeg',
'jpeg' => 'image/jpeg',
'jpe' => 'image/jpeg',
'bmp' => 'image/bmp',
'png' => 'image/png',
'tif' => 'image/tiff',
'tiff' => 'image/tiff',
'pict' => 'image/x-pict',
'pic' => 'image/x-pict',
'pct' => 'image/x-pict',
'tif' => 'image/tiff',
'tiff' => 'image/tiff',
'psd' => 'image/x-photoshop',

'swf' => 'application/x-shockwave-flash',
'js' => 'application/x-javascript',
'pdf' => 'application/pdf',
'ps' => 'application/postscript',
'eps' => 'application/postscript',
'ai' => 'application/postscript',
'wmf' => 'application/x-msmetafile',

'css' => 'text/css',
'htm' => 'text/html',
'html' => 'text/html',
'txt' => 'text/plain',
'xml' => 'text/xml',
'wml' => 'text/wml',
'wbmp' => 'image/vnd.wap.wbmp',

'mid' => 'audio/midi',
'wav' => 'audio/wav',
'mp3' => 'audio/mpeg',
'mp2' => 'audio/mpeg',

'avi' => 'video/x-msvideo',
'mpeg' => 'video/mpeg',
'mpg' => 'video/mpeg',
'qt' => 'video/quicktime',
'mov' => 'video/quicktime',

'lha' => 'application/x-lha',
'lzh' => 'application/x-lha',
'z' => 'application/x-compress',
'gtar' => 'application/x-gtar',
'gz' => 'application/x-gzip',
'gzip' => 'application/x-gzip',
'tgz' => 'application/x-gzip',
'tar' => 'application/x-tar',
'bz2' => 'application/bzip2',
'zip' => 'application/zip',
'arj' => 'application/x-arj',
'rar' => 'application/x-rar-compressed',

'hqx' => 'application/mac-binhex40',
'sit' => 'application/x-stuffit',
'bin' => 'application/x-macbinary',

'uu' => 'text/x-uuencode',
'uue' => 'text/x-uuencode',

'latex'=> 'application/x-latex',
'ltx' => 'application/x-latex',
'tcl' => 'application/x-tcl',

'pgp' => 'application/pgp',
'asc' => 'application/pgp',
'exe' => 'application/x-msdownload',
'doc' => 'application/msword',
'rtf' => 'application/rtf',
'xls' => 'application/vnd.ms-excel',
'ppt' => 'application/vnd.ms-powerpoint',
'mdb' => 'application/x-msaccess',
'wri' => 'application/x-mswrite',
);
5、php生成excel文档

header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:filename=test.xls");
echo "test1\t";
echo "test2\t\n";
echo "test1\t";
echo "test2\t\n";
echo "test1\t";
echo "test2\t\n";
echo "test1\t";
echo "test2\t\n";
echo "test1\t";
echo "test2\t\n";
echo "test1\t";
echo "test2\t\n";
?>
//改动相应文件头就可以输出.doc .xls等文件格式了
6、时间比较问题
举一个简单例子说明:比如一个论坛对当天发表的贴子用new图片标记一下。
方法一:
//$db->rows[$i][date]中为数据库中datetime字段值.
$today=time();
$theDay=date("Y-m-d H:i:s",$today-24*3600);
$newTag=$db->rows[$i][date]>=$theDay?"经验积累,献给PHP爱好者!!!_PHP":"";
方法二:
$newTag=$db->rows[$i][date]>=date("Y-m-d 00:00:00")?"经验积累,献给PHP爱好者!!!_PHP":"";
7、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)

Mi-Fans kritisieren, Xiaomi bleibt, The Paper OS kann ohne Jin Fan nicht leben? Mi-Fans kritisieren, Xiaomi bleibt, The Paper OS kann ohne Jin Fan nicht leben? Aug 07, 2024 pm 06:16 PM

„Der Rücktritt von Jin Fan“ ist wahrscheinlich das, worüber sich alle Rice-Fans in naher Zukunft am meisten Sorgen machen. Einige Leute beeilten sich, es einander zu sagen und murmelten: „Das Xiaomi-System kann gerettet werden“, während andere lachten und spotteten: „Egal.“ Wer ihn ersetzt, wird das Gleiche sein. Interessanter ist, dass die Nachricht vom „Rücktritt von Jin Fan“ nicht von Xiaomi-Beamten oder anderen Insidern kam, sondern weil einige Internetnutzer herausfanden, dass Jin Fans Weibo von allen Inhalten befreit worden war. Es schien, als würde er weglaufen, um Verdacht zu vermeiden. , das Gleiche wie das Löschen von Sozialkonten. Quelle: Weibo Diese Nachricht erregte schnell die Aufmerksamkeit einer großen Anzahl digitaler Blogger und Medien, darunter sogar maßgeblicher Medien wie Phoenix.com, und wurde plötzlich zur neuesten und heißesten „Melone“ im digitalen Kreis. Obwohl Wang Hua, der Leiter der PR-Abteilung von Xiaomi, die Gerüchte später widerlegte, sagte er, dass Jin Fan nicht zurückgetreten sei, sondern sich „zurückziehe“, um für ihn zu arbeiten

Das NLP-Team von Fudan veröffentlichte einen 80-seitigen Überblick über groß angelegte Modellagenten und bietet in einem Artikel einen Überblick über den aktuellen Status und die Zukunft von KI-Agenten Das NLP-Team von Fudan veröffentlichte einen 80-seitigen Überblick über groß angelegte Modellagenten und bietet in einem Artikel einen Überblick über den aktuellen Status und die Zukunft von KI-Agenten Sep 23, 2023 am 09:01 AM

Kürzlich hat das Natural Language Processing Team (FudanNLP) der Fudan University einen Übersichtsartikel zu LLM-basierten Agenten veröffentlicht. Der vollständige Text ist 86 Seiten lang und enthält mehr als 600 Referenzen! Ausgehend von der Geschichte von AIAgent haben die Autoren den aktuellen Status intelligenter Agenten basierend auf großen Sprachmodellen umfassend geklärt, einschließlich: Hintergrund, Zusammensetzung, Anwendungsszenarien von LLM-basierten Agenten und der Agentengesellschaft, die viel Aufmerksamkeit erregt hat. Gleichzeitig diskutierten die Autoren zukunftsweisende und offene Fragen im Zusammenhang mit Agent, die für die zukünftigen Entwicklungstrends verwandter Bereiche von großem Wert sind. Papierlink: https://arxiv.org/pdf/2309.07864.pdfLLM-basedAgent-Papierliste:

Erfahrungsaustausch in der PHP-Entwicklung: Erfahrungen und Vorschläge zur Beherrschung der Implementierung verschiedener Funktionen Erfahrungsaustausch in der PHP-Entwicklung: Erfahrungen und Vorschläge zur Beherrschung der Implementierung verschiedener Funktionen Nov 22, 2023 pm 12:02 PM

Im gegenwärtigen Zeitalter der rasanten Entwicklung des Internets wird PHP als serverseitige Skriptsprache von immer mehr Entwicklern übernommen. PHP hat den Vorteil, dass es leicht zu erlernen, flexibel, Open Source und kostenlos ist und schnell verschiedene Websites und Webanwendungen entwickeln kann. Wenn Sie jedoch als PHP-Entwickler im harten Wettbewerb hervorstechen und effizienten und stabilen Code schreiben möchten, müssen Sie auch die Implementierungsfähigkeiten und Erfahrung verschiedener Funktionen beherrschen. Zunächst einmal ist eine vernünftige Planung der Projektarchitektur der Schlüssel zur Entwicklung von PHP-Anwendungen. Eine gute Projektstruktur kann eine bessere Wartbarkeit des Codes ermöglichen

Welche Methoden werden in der Python-Betriebssystembibliothek häufig verwendet? Welche Methoden werden in der Python-Betriebssystembibliothek häufig verwendet? May 03, 2023 am 09:55 AM

Häufig verwendete Funktionen und Methoden In Python bietet die OS-Bibliothek eine große Anzahl betriebssystembezogener Funktionen und Methoden. Im Folgenden sind einige häufig verwendete Funktionen und Methoden sowie deren ausführliche Einführung, Fälle und vollständige Kommentare aufgeführt: getcwd()-Funktion: Ruft das aktuelle Arbeitsverzeichnis ab. importos#Das aktuelle Arbeitsverzeichnis abrufen current_dir=os.getcwd() print(current_dir) Im obigen Code verwenden wir die Funktion getcwd(), um das aktuelle Arbeitsverzeichnis abzurufen und es der Variablen current_dir zuzuweisen. Diese Funktion gibt eine Zeichenfolge zurück, die den Pfad zum aktuellen Arbeitsverzeichnis darstellt. listdir()-Funktion: Listet alle Dateien und Unterverzeichnisse im angegebenen Verzeichnis i auf

Was bedeutet OS? Was bedeutet OS? Mar 25, 2021 pm 04:00 PM

os hat viele Bedeutungen: 1. Betriebssystem (Betriebssystem), ein Programm, das Computer-Hardware- und Softwareressourcen verwaltet; 2. Open-Source-Code (Open Source); 4. Operator-Station;

Auf die Fallstricke gestoßen: Go-Erfahrung und Unterricht in der Entwicklung von Sprachprojekten Auf die Fallstricke gestoßen: Go-Erfahrung und Unterricht in der Entwicklung von Sprachprojekten Nov 03, 2023 am 08:14 AM

Fallen, auf die man getreten ist: Erfahrungen und Lektionen bei der Entwicklung von Sprachprojekten Auf dem Weg der Softwareentwicklung wird jeder Entwickler unweigerlich auf einige Fallstricke stoßen. Dies ist natürlich keine Ausnahme für Go-Sprachentwickler. In diesem Artikel werden die Fallstricke erläutert, auf die ich bei der Projektentwicklung mit der Go-Sprache gestoßen bin, und ich hoffe, anderen Entwicklern einige Erfahrungen und Lehren zu vermitteln. Verschiedene Versionen der Go-Sprache Wenn wir die Go-Sprache für die Projektentwicklung verwenden, müssen wir auf die Version der Go-Sprache achten. Es kann zu einigen Sprachunterschieden oder API-Änderungen zwischen verschiedenen Versionen kommen

Wie behebt man den Fehler „undefiniert: os.MkdirAll' in Golang? Wie behebt man den Fehler „undefiniert: os.MkdirAll' in Golang? Jun 25, 2023 pm 06:18 PM

Bei der Entwicklung mit der Go-Sprache (Golang) kann der Fehler „undefiniert:os.MkdirAll“ auftreten. Dieser Fehler ist darauf zurückzuführen, dass die Funktion MkdirAll() im Betriebssystempaket im Code aufgerufen wird, die Definition der Funktion jedoch nicht gefunden werden kann, d. h. die Funktion MkdirAll() wird nicht korrekt importiert. In diesem Artikel erklären wir die Ursache dieses Fehlers und wie man ihn beheben kann. „undefiniert:os.Mkdir“ verstehen

Richard Sutton: Erfahrung sind die ultimativen Daten der KI, vier Stufen, die zur Entwicklung echter KI führen Richard Sutton: Erfahrung sind die ultimativen Daten der KI, vier Stufen, die zur Entwicklung echter KI führen Apr 09, 2023 am 10:01 AM

Einleitung: Die Entwicklung starker künstlicher Intelligenz war in den letzten Jahren ein besorgniserregendes Thema. Viele Forscher konzentrieren sich darauf, die KI aus der Wahrnehmung und dem Verhalten des Menschen lernen zu lassen und nicht nur aus einfach etikettierten Daten. Unter anderem ist die Frage, wie man die von Menschen erworbenen Alltagserfahrungen nutzen kann, um künstliche Intelligenz zu inspirieren und aufzubauen, die sich an verschiedene Umgebungen anpassen und mit der Außenwelt interagieren kann, in einigen Bereichen zu einer neuen Forschungsmethode geworden. Richard Sutton, bekannt als Vater des Reinforcement Learning, schlug kürzlich die Idee vor, Erfahrungen zu nutzen, um die Entwicklung von KI zu inspirieren. Er unterteilte den Prozess der KI von der Nutzung von Daten bis zur Nutzung von Erfahrungen in vier Entwicklungsstufen und schlug die Entwicklungsrichtung für den Aufbau echter KI (Real AI) in der Zukunft vor. Am 31. Mai 2022 hielt Richard Sutton eine Rede auf der Beijing Intelligent Source Conference 2022

See all articles