PHP の一般的なページング クラス page.php [Google ページングの模倣]
page.php
コードをコピー コードは次のとおりです:
/**
** 一般的な PHP ページング クラス。 (Google スタイルを模倣します)
** 指定する必要があるのは、レコードの総数とページごとの表示数の 2 つのパラメータだけです。 (詳細な手順は添付されています。)
** URL を指定する必要はありません。リンクはプログラムによって生成されます。検索結果のページングに便利です。
** フォームは GET メソッドを使用して送信されます。これにより、クエリや削除などの操作中に URL パラメーターが失われることがなくなります。*/
class Pager{
//IE アドレス バー アドレス
var $url
//レコードの総数
var $countall;//ページの総数
var $page;//ページ番号リンク
var $thestr; / ホーム ページ、前のページのリンク
var $backstr;//最後のページ、次のページのリンク
var $nextstr;//現在のページ番号
var $pg; //ページごとのレコード数を表示します
var $countlist;//ページめくりスタイル
var $style>//この関数はこのクラスをインスタンス化するときに自動的に実行されます
function Pager($countall,$countlist,$style="page"){
//レコード数と各ページに表示される件数が統合できない場合は、ページ数を余りとして1を加算します
$this->countall = $countall;
$this->countlist = $countlist;
$this->style=$style; %$this->countlist!=0) {
$this->page=sprintf("%d",$this->countall/$this->countlist) 1; {
$this->page= $this->countall/$this->countlist;
}
$this->pg=$_GET["pg"];
//unspecified の pg を保証します。この場合、1 ページ目から開始します
if (!ereg("^[1-9][0-9]*$",$this->pg) || empty($this->pg) ){
$this->pg=1;
}
//ページ番号が最大範囲を超えているため、最大値を取得します
if ($ this->pg>$this->page) {
$this->pg=$this->page;
}
// 現在の URL を取得します。具体的な実装については、下部の関数エンティティを参照してください。
$this->url = Pager::getUrl();
//間違った形式のページ番号を正しいページ番号に置き換えます
if( isset($_GET[" pg"]) && $_GET["pg"]!=$this->pg){
$this->url=str_replace("?pg=".$_GET[" pg"],"? pg=$this->pg",$this->url);
$this->url=str_replace("&pg=".$_GET["pg"]," &pg=$this-> ;pg",$this->url);
}
//12345 などの数値の形式でページネーションを生成します。
if ($this->pagefor ($i=1;$ipage 1;$i ){
$this->thestr =$this->thestr.Pager::makepg($i,$this->pg);
}
}else{
if ($this->pgfor ($i=1;$i$this ->thestr=$this->thestr.Pager::makepg($i,$this->pg);
}
}else{
if (6 $this->pg<=$this->page){
for ($i=$this->pg-4;$ i<$this->pg 6;$i ){
$this->thestr=$this->thestr.Pager::makepg($i,$this->pg);
}
}else{
for ($i=$this->pg-4;$ipage 1;$i ){
$this->; thestr=$this->thestr.Pager::makepg($i,$this->pg);
}
}
}
}
// 上页下页等文字链接生成
$this->backstr = Pager::gotoback($this- >ページ);
$this->nextstr = Pager::gotonext($this->pg,$this->page);
//echo (" 共".$this->countall." 条,每页".$this->countlist."条,共".$this->page."页".$ this->backstr.$this->thestr.$this->nextstr);
}
// 数字分を生成する補助関数
function makepg($i,$pg){
if ($i==$pg){
return " ".$i."";
}else{
return " ".$i."";
}
}
// 上一页等情報の関数を生成
function gotoback($pg){
if ($pg-1>0){
return $this ->gotoback=" 首页< /a> 上一页 >";
}else{
return $this->gotoback="首页 上一页 ";
}
}
// 次の一页等情報の関数を生成
function gotonext($pg,$page){
if ($pg < $page){
return " 下一页url,4,0)." class='".$this->style."'>尾页 ;
}else{
return " 下一页 尾页";
}
}
//処理url中$pgのメソッド、自動生成用pg=x
function replacepg($url,$flag,$i){
if ($フラグ == 1){
$temp_pg = $this->pg;
return str_replace("pg=".$temp_pg,"pg=".($this->pg 1),$url);
}else if($flag == 2) {
$temp_pg = $this->pg;
return str_replace("pg=".$temp_pg,"pg=".($this->pg-1),$url);
}else if($flag == 3) {
$temp_pg = $this->pg;
return str_replace("pg=".$temp_pg,"pg=1",$url);
}else if($flag == 4){
$temp_pg = $this->pg;
return str_replace("pg=".$temp_pg,"pg=".$this->page,$url);
}else if($flag == 5){
$temp_pg = $this->pg;
return str_replace("pg=".$temp_pg,"pg=".$i,$url);
}else{
return $url;
}
}
//現在の URL を取得するメソッド
function getUrl(){
$url="http://".$_SERVER["HTTP_HOST"];
if(isset($_SERVER["REQUEST_URI"])){
$url.=$_SERVER["REQUEST_URI"];
}else{
$url.=$_SERVER["PHP_SELF"];
if(!empty($_SERVER["QUERY_STRING"])){
$url.="?".$_SERVER["QUERY_STRING"];
}
}
//現在のURL里に追加pg=x字样
if (!ereg("(pg=|PG=|pG=|Pg=)", $url) ){
if (!strpos($url,"?")){
$url = $url."?pg=1";
}else{
$url = $url."&pg=1";
}
}
$url を返す;
}
}
?>

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

あなたが経験豊富な PHP 開発者であれば、すでにそこにいて、すでにそれを行っていると感じているかもしれません。あなたは、運用を達成するために、かなりの数のアプリケーションを開発し、数百万行のコードをデバッグし、大量のスクリプトを微調整してきました。

このチュートリアルでは、PHPを使用してXMLドキュメントを効率的に処理する方法を示しています。 XML(拡張可能なマークアップ言語)は、人間の読みやすさとマシン解析の両方に合わせて設計された多用途のテキストベースのマークアップ言語です。一般的にデータストレージに使用されます

JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

文字列は、文字、数字、シンボルを含む一連の文字です。このチュートリアルでは、さまざまな方法を使用してPHPの特定の文字列内の母音の数を計算する方法を学びます。英語の母音は、a、e、i、o、u、そしてそれらは大文字または小文字である可能性があります。 母音とは何ですか? 母音は、特定の発音を表すアルファベットのある文字です。大文字と小文字など、英語には5つの母音があります。 a、e、i、o、u 例1 入力:string = "tutorialspoint" 出力:6 説明する 文字列「TutorialSpoint」の母音は、u、o、i、a、o、iです。合計で6元があります

静的結合(静的::) PHPで後期静的結合(LSB)を実装し、クラスを定義するのではなく、静的コンテキストで呼び出しクラスを参照できるようにします。 1)解析プロセスは実行時に実行されます。2)継承関係のコールクラスを検索します。3)パフォーマンスオーバーヘッドをもたらす可能性があります。

PHPの魔法の方法は何ですか? PHPの魔法の方法には次のものが含まれます。1。\ _ \ _コンストラクト、オブジェクトの初期化に使用されます。 2。\ _ \ _リソースのクリーンアップに使用される破壊。 3。\ _ \ _呼び出し、存在しないメソッド呼び出しを処理します。 4。\ _ \ _ get、dynamic属性アクセスを実装します。 5。\ _ \ _セット、動的属性設定を実装します。これらの方法は、特定の状況で自動的に呼び出され、コードの柔軟性と効率を向上させます。
