PHP codeigniter フレームワーク ページング class_PHP チュートリアル
codeigniter には非常に使いやすいページネーション クラスがあります。このチュートリアルでは、データベース チュートリアルから一連の結果を返し、それらの結果をページ分割する簡単な例を実行します。最新バージョンのciを使用します。ページング クラスは変更されていません (少なくとも私は変更していないと思います)。フレームワークの最新の安定したバージョンを使用することをお勧めします
メソッドを呼び出す
//ページングを作成する
$config = array();
$this- >load-> library('hpages');
$config['base_url'] = "channel/lists/c{$slug}/{page}";
$config['total_rows'] = intval($ total);
$config ['per_page'] = $pagesize;
$config['uri_segment'] = 1;
$config['num_links'] = 3;
$config['underline_uri_seg'] = 1;下線のページ番号 uri
$this->hpages->init($config); の場所
$this->template['lists'] = $list;
$this->template[ 'pagestr'] = $this- >hpages->create_links(1);
php チュートリアル ファイル コード
/**
= =右のリンクを使用してください。最後のページの終了
* file_name: hpages.php
* Haohai Network フロントエンド ページング クラス
*
* @package haohailuo
* @author by laurence.xu
* @copyright copyright (c) 2010, haohailuo 、株式会社
* @Link http://www.haohailuo.com
* @SINCE VERSION 1.0 $ ID $
* @VERSION WED DEC 08 12:21:17 CST 2010
* @Filesource
*/
クラスHPページ{var $ cur_tag_open = '< b>'; //現在のページの開始...
var $ cur_tag_closevar $ next_open 「番号」リンク。 bar $ num_tag_close。
var $page_query_string = false; //末尾にページを追加する場合のデフォルト? {page} が含まれている場合、現在のページに置き換えられます。 line_uri_seg = -1; //下線がある場合、配列の添字位置ページ番号var $ custom_cur_page = 0 /pagination.php ')){
exlication_once(apppath.'config/pagination.php');// if(Isset($ this-> $ key)){
false、$ top_info = false){
//ページごとにレコードまたは0の数字がない場合、空のif($ this-> total_rows == 0 || $this-& gt; per_page == 0) {{
。ページごと);//只有一页, 戻り空
if ($num_pages == 1 && !$show_info) {
return '';
}
$ci =& get_instance();//获取当前页编号
if ($ci->config->item('enable_query_strings') === true || $this->page_query_string === true) {
if ($ci->input->get($this ->query_string_segment) != 0) {
$this->cur_page = $ci->input->get($this->query_string_segment);// 現在のページを準備します - おかしなことはありません!
$this->cur_page = (int) $this->cur_page;
}
} else {
if (intval($this->custom_cur_page) > 0) {
$this->cur_page = (int) $this->custom_cur_page;
}else{
$uri_segment = $ci->uri->segment($this->uri_segment, 0);
if ( !empty($uri_segment) ) {
$this->cur_page = $uri_segment;
//如果有下划線
if ($this->underline_uri_seg >= 0) {
if (strpos($this ->cur_page, '-') !== false) {
$arr =explode('-', $this->cur_page);
}else {
$arr =explode('_', $this- >cur_page);
}
$this->cur_page = $arr[$this->underline_uri_seg];
unset($arr);
}
// 現在のページを準備します - おかしなことはありません!
$this->cur_page = (int) $this->cur_page;
}
}
}
// echo $this ->cur_page;exit;
//左右显示的页码个数
$this->num_links = (int)$this->num_links;if ($this-&g t;リンク数 show_error('リンク数は正の数である必要があります。');
}if ( ! is_numeric($this->cur_page) || $this->cur_page {
} $uri_page_number = $this->cur_page;🎜
$this-> ;cur_page = 1;
}
//如果当前页数大常页数,则赋值给当前页数最大值
if ($this->cur_page > $num_pages) {
$this->cur_page = $num_pages;if ($ci->config->item('enable_query_strings') === true || $this->page_query_string === true) {
$this->base_url = rtrim($this-> ;base_url).'&'.$this->query_string_segment.'=';
} else {
$this->base_url = rtrim($this->base_url, '/') .'/';
}
if (strpos($this->base_url, "{page}") !== false) {
$this->page_mode = 'replace';
}
$output = $top_output = '' ;
//データ总量情報
if ($show_info) {
$output = " 共".$this->total_rows ."条记录 {$this->cur_page}/".$num_pages."页每页{$this ->per_page}条 ";
}
//データ情報,显示上面,提供要
if ($top_info) $top_output = " 共 ".$this- >total_rows ." 条记录 第{$this->cur_page}页/共".$num_pages."页 ";
}
//判断要显示首页
if ($this->cur_page > $this->num_links+1) {
$output .= $this->first_tag_open.' '.$this->first_link.''.$this->first_tag_close;
}
/ /显示上一页
if ($this->cur_page != 1) {
$j = $this->cur_page - 1;
if ($ j == 0) $j = '';
$output .= $this->prev_tag_open.''.$this->prev_link.''。 $this->prev_tag_close;
}
//显示中页
for ($i=1; $i if ($i cur_page-$this->num_links || $i > $this->cur_page+$this->num_links) {
続き;
}
//显示中间页数
if($this->cur_page == $i){
$出力。 = $this->cur_tag_open.$i.$this->cur_tag_close; //当前页
}else {
$output .= $this->num_tag_open.'' .$i. '.$this->num_tag_close;
}
}
//显示下一页
if ($this->cur_page $k = $this-> cur_page + 1;
$output .= $this->next_tag_open.''.$this->next_link.' '.$this->next_tag_close;
}
//显示尾页
if (($this-> cur_page + $this->num_links) $output .= $this->last_tag_open.''.$this->last_link.''。 $this->last_tag_close;
}$output = preg_replace("#([^:])//+#", "1/", $output);
// ラッパー HTML を追加存在します
if($ top_info){
$output = $this->full_tag_open.$output.$this->full_tag_close;return array($ output、$ top_output); ) {
if($this->page_mode == 'default') {
return $this->_forsearch($this->base_url.$str);
} else {
$url = $this-> ;base_url;
if ($str == 1) {
$url = str_replace('/{page}', '', $this->base_url);
}
$url = str_replace("{page}" , $str, $url);
return $this->forsearch($url);
}
}
/**
*/
function _forsearch($string) {
$length = strlen( $string) - 1;
if($string{$length} == '/') {
$string = rtrim($string, '/');
}
return site_url($string);
$string を返します。
http://www.bkjia.com/PHPjc/444803.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/444803.html
技術記事

PHPタイプは、コードの品質と読みやすさを向上させるためのプロンプトがあります。 1)スカラータイプのヒント:php7.0であるため、基本データ型は、int、floatなどの関数パラメーターで指定できます。 3)ユニオンタイプのプロンプト:PHP8.0であるため、関数パラメーターまたは戻り値で複数のタイプを指定することができます。 4)Nullable Typeプロンプト:null値を含めることができ、null値を返す可能性のある機能を処理できます。

PHPでは、クローンキーワードを使用してオブジェクトのコピーを作成し、\ _ \ _クローンマジックメソッドを使用してクローン動作をカスタマイズします。 1.クローンキーワードを使用して浅いコピーを作成し、オブジェクトのプロパティをクローン化しますが、オブジェクトのプロパティはクローニングしません。 2。\ _ \ _クローン法は、浅いコピーの問題を避けるために、ネストされたオブジェクトを深くコピーできます。 3.クローニングにおける円形の参照とパフォーマンスの問題を避けるために注意し、クローニング操作を最適化して効率を向上させます。

PHPはWeb開発およびコンテンツ管理システムに適しており、Pythonはデータサイエンス、機械学習、自動化スクリプトに適しています。 1.PHPは、高速でスケーラブルなWebサイトとアプリケーションの構築においてうまく機能し、WordPressなどのCMSで一般的に使用されます。 2。Pythonは、NumpyやTensorflowなどの豊富なライブラリを使用して、データサイエンスと機械学習の分野で驚くほどパフォーマンスを発揮しています。

HTTPキャッシュヘッダーの主要なプレーヤーには、キャッシュコントロール、ETAG、およびラスト修飾が含まれます。 1.Cache-Controlは、キャッシュポリシーを制御するために使用されます。例:キャッシュコントロール:Max-Age = 3600、public。 2。ETAGは、一意の識別子を介してリソースの変更を検証します。例:ETAG: "686897696A7C876B7E"。 3. Last-Modifiedは、リソースの最後の変更時間を示しています。

PHPでは、Password_hashとpassword_verify関数を使用して安全なパスワードハッシュを実装する必要があり、MD5またはSHA1を使用しないでください。 1)password_hashセキュリティを強化するために、塩値を含むハッシュを生成します。 2)password_verifyハッシュ値を比較して、パスワードを確認し、セキュリティを確保します。 3)MD5とSHA1は脆弱であり、塩の値が不足しており、最新のパスワードセキュリティには適していません。

PHPは、動的なWeb開発およびサーバー側のアプリケーションに使用されるサーバー側のスクリプト言語です。 1.PHPは、編集を必要とせず、迅速な発展に適した解釈言語です。 2。PHPコードはHTMLに組み込まれているため、Webページの開発が簡単になりました。 3。PHPプロセスサーバー側のロジック、HTML出力を生成し、ユーザーの相互作用とデータ処理をサポートします。 4。PHPは、データベースと対話し、プロセスフォームの送信、サーバー側のタスクを実行できます。

PHPは過去数十年にわたってネットワークを形成しており、Web開発において重要な役割を果たし続けます。 1)PHPは1994年に発信され、MySQLとのシームレスな統合により、開発者にとって最初の選択肢となっています。 2)コア関数には、動的なコンテンツの生成とデータベースとの統合が含まれ、ウェブサイトをリアルタイムで更新し、パーソナライズされた方法で表示できるようにします。 3)PHPの幅広いアプリケーションとエコシステムは、長期的な影響を促進していますが、バージョンの更新とセキュリティの課題にも直面しています。 4)PHP7のリリースなど、近年のパフォーマンスの改善により、現代の言語と競合できるようになりました。 5)将来的には、PHPはコンテナ化やマイクロサービスなどの新しい課題に対処する必要がありますが、その柔軟性とアクティブなコミュニティにより適応性があります。

PHPの中心的な利点には、学習の容易さ、強力なWeb開発サポート、豊富なライブラリとフレームワーク、高性能とスケーラビリティ、クロスプラットフォームの互換性、費用対効果が含まれます。 1)初心者に適した学習と使用が簡単。 2)Webサーバーとの適切な統合および複数のデータベースをサポートします。 3)Laravelなどの強力なフレームワークを持っています。 4)最適化を通じて高性能を達成できます。 5)複数のオペレーティングシステムをサポートします。 6)開発コストを削減するためのオープンソース。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

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

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター
