PHP は HTML タグを自動的に終了関数コードを完成させる_PHP チュートリアル
いくつかのコードを簡単に説明します。
最初の ~(<[^>]+?>)~si
この正規表現は <…………> の内容と一致します。簡単に言うと、すべての
2 番目の ~<([a-z0-9]+)[^/>]*?/>~si
この正規表現は <……/> の内容と一致します。
のような単一の閉じたタグです
3 番目の ~([a-z0-9]+)[^/>]*?>~si
この正規表現は < に一致します。 /.....>。つまり、 のような終了タグ
4 番目の ~<([a-z0-9]+)[^/>]*?>~si
は <......> ; の内容。これは最初のタグとは異なります。HTML タグには次のような数字と文字しか含まれていません。
5 番目のタグ~~si
説明する必要はありません。残りの HTMl コメント
は、ソース コード、PHP ソース コードの添付ファイルで確認できます:
/**
* HTML を取得し、自動的に完成して閉じます
*
* param $html
*
* param $length
*
* param $end
*/
function subHtml($html, $length=50) {
$tagStack = array();
$contents = preg_split("~(< [^>]+?>)~si", $html, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE)
foreach($contents as $tag) {
if (trim($tag); ) == "") 続行
if (preg_match("~<([a-z0-9]+)[^/>]*?/>~si", $tag)) {
$result .= $tag;
} else if (preg_match("~([a-z0-9]+)[^/>>]*?>~si", $tag, $match)) {
if ($tagStack[count($ tagStack)-1] == $match[1]) {
array_pop($tagStack)
$result .= $tag; else if (preg_match("~< ([a-z0-9] +)[^/>]*?>~si", $tag, $match)) {
array_push($tagStack, $match[1]);
$result .= $tag;
} else if (preg_match("~~si", $tag)) {
$result .= $tag; else {
if ($len + mstrlen($tag) < $length) {
$result .= $tag;
$len += mstrlen($tag) } else {
$str($tag, 0, $length - $ len + 1);
$result .= $str;
}
}
} while (!empty($tagStack)) {
$result .= '' . >';
}
return $result;
/**
* 中国語文字列の取得
*
* param $string string
*
* param $start 開始ビット
*
* param $length 長さ
*
* param $charset エンコーディング
*
* param $dot 追加の単語串
*/
function msubstr($string, $start, $length, $dot = '', $charset = 'UTF-8') {
$string = str_replace(array ('&', '"', '<', '>', ' '), array('&', '"', '<', '>' , ' '), $string) ;
if (strlen($string) return $string;
if (strto lower($charset) == 'utf-8') {
$ n = $tn = $noc = 0;
while ($n
if ($t == 9 || $t == 10 || (32 $tn = 1
} elseif (194 $tn = 2;
$n += 2;
} elseif (224 $n += 3; 240 $tn = 4;
} elseif (248 $tn = 5;
$n += 5;
} elseif ($t == 252 || $t == 253) {
$n += 6;
$noc++;
if ( $noc >= $length) {
break;
}
}
if ($noc > $length) {
$n -= $tn }
$strcut; ($string, 0, $n );
} else {
for($i = 0; $i $strcut .= ord($string[$i]) > 127 ? $string[$i] : $string[$i];
$strcut .
/**
* 中国語と英語を含む文字列の長さを取得します。
*/
関数($str, $charset = ' UTF-8') {
if (function_exists('mb_substr')) {
$length = mb_strlen($str, $charset)
} elseif (function_exists('iconv_substr');
$length = iconv_strlen($str , $charset);
} else {
preg_match_all("/[x01-x7f]|[xc2-xdf][x80-xbf]|xe0[xa0-xbf][x80-xbf] |[xe1-xef][x80-xbf][x80-xbf]|xf0[x90-xbf][x80-f][x80-xbf]|[xf1-xf7][x80-xbf][x80-xbf][ x80-xbf]/", $ text, $ar);
$length = count($ar[0]);
}
return $length;
}
$str = "
テスト | 124"; echo subHtml($str); ?> と一致します このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
![]() ホットAIツール![]() Undresser.AI Undressリアルなヌード写真を作成する AI 搭載アプリ ![]() AI Clothes Remover写真から衣服を削除するオンライン AI ツール。 ![]() Undress AI Tool脱衣画像を無料で ![]() Clothoff.ioAI衣類リムーバー ![]() Video Face Swap完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。 ![]() 人気の記事
KB5055612を修正する方法Windows 10にインストールできませんか?
4週間前
By DDD
<🎜>:バブルガムシミュレーターインフィニティ - ロイヤルキーの取得と使用方法
4週間前
By 尊渡假赌尊渡假赌尊渡假赌
<🎜>:庭を育てる - 完全な突然変異ガイド
3週間前
By DDD
Nordhold:Fusion System、説明
4週間前
By 尊渡假赌尊渡假赌尊渡假赌
マンドラゴラ:魔女の木のささやき - グラップリングフックのロックを解除する方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
![]() ホットツール![]() メモ帳++7.3.1使いやすく無料のコードエディター ![]() SublimeText3 中国語版中国語版、とても使いやすい ![]() ゼンドスタジオ 13.0.1強力な PHP 統合開発環境 ![]() ドリームウィーバー CS6ビジュアル Web 開発ツール ![]() SublimeText3 Mac版神レベルのコード編集ソフト(SublimeText3) ![]() ホットトピック
Java チュートリアル
![]() ![]()
CakePHP チュートリアル
![]() ![]()
Laravel チュートリアル
![]() ![]()
PHP チュートリアル
![]() ![]()
C# チュートリアル
![]() ![]() ![]() PHPは主に手順プログラミングですが、オブジェクト指向プログラミング(OOP)もサポートしています。 Pythonは、OOP、機能、手続き上のプログラミングなど、さまざまなパラダイムをサポートしています。 PHPはWeb開発に適しており、Pythonはデータ分析や機械学習などのさまざまなアプリケーションに適しています。 ![]() PHPはMySQLIおよびPDO拡張機能を使用して、データベース操作とサーバー側のロジック処理で対話し、セッション管理などの関数を介してサーバー側のロジックを処理します。 1)MySQLIまたはPDOを使用してデータベースに接続し、SQLクエリを実行します。 2)セッション管理およびその他の機能を通じて、HTTPリクエストとユーザーステータスを処理します。 3)トランザクションを使用して、データベース操作の原子性を確保します。 4)SQLインジェクションを防ぎ、例外処理とデバッグの閉鎖接続を使用します。 5)インデックスとキャッシュを通じてパフォーマンスを最適化し、読みやすいコードを書き、エラー処理を実行します。 ![]() PHPは動的なWebサイトを構築するために使用され、そのコア関数には次のものが含まれます。1。データベースに接続することにより、動的コンテンツを生成し、リアルタイムでWebページを生成します。 2。ユーザーのインタラクションを処理し、提出をフォームし、入力を確認し、操作に応答します。 3.セッションとユーザー認証を管理して、パーソナライズされたエクスペリエンスを提供します。 4.パフォーマンスを最適化し、ベストプラクティスに従って、ウェブサイトの効率とセキュリティを改善します。 ![]() Web開発におけるHTML、CSS、およびJavaScriptの役割は次のとおりです。1。HTMLは、Webページ構造を定義し、2。CSSはWebページスタイルを制御し、3。JavaScriptは動的な動作を追加します。一緒に、彼らは最新のウェブサイトのフレームワーク、美学、および相互作用を構築します。 ![]() PHPはWeb開発と迅速なプロトタイピングに適しており、Pythonはデータサイエンスと機械学習に適しています。 1.PHPは、単純な構文と迅速な開発に適した動的なWeb開発に使用されます。 2。Pythonには簡潔な構文があり、複数のフィールドに適しており、強力なライブラリエコシステムがあります。 ![]() PHPは1994年に発信され、Rasmuslerdorfによって開発されました。もともとはウェブサイトの訪問者を追跡するために使用され、サーバー側のスクリプト言語に徐々に進化し、Web開発で広く使用されていました。 Pythonは、1980年代後半にGuidovan Rossumによって開発され、1991年に最初にリリースされました。コードの読みやすさとシンプルさを強調し、科学的コンピューティング、データ分析、その他の分野に適しています。 ![]() PHPの中心的な利点には、学習の容易さ、強力なWeb開発サポート、豊富なライブラリとフレームワーク、高性能とスケーラビリティ、クロスプラットフォームの互換性、費用対効果が含まれます。 1)初心者に適した学習と使用が簡単。 2)Webサーバーとの適切な統合および複数のデータベースをサポートします。 3)Laravelなどの強力なフレームワークを持っています。 4)最適化を通じて高性能を達成できます。 5)複数のオペレーティングシステムをサポートします。 6)開発コストを削減するためのオープンソース。 ![]() phphassiblasifly-impactedwebdevevermentandsbeyondit.1)itpowersmajorplatformslikewordpratsandexcelsindatabase interactions.2)php'sadaptableability allowsitale forlargeapplicationsusingframeworkslikelavel.3) ![]() |