search
HomeBackend DevelopmentPHP TutorialImplementation method of generating static pages based on PHP_PHP tutorial

Implementation method of generating static pages based on PHP_PHP tutorial

Jul 21, 2016 pm 03:11 PM
phponecodebased oncopyaccomplishmethodstencilgenerateofstatic

t1.php

Copy code The code is as follows:

//Based on method one The template generates a static page
// The replaceTemplateString function is used to replace the specified string in the template
function replaceTemplateString($templateString) {
// Variable used for replacement
$title = "Article title";
$body = "Here is the body of the article";
//Replace the string specified in the template
$showString = str_replace ("%title%", $title, $templateString);
$showString = str_replace ( "%body%", $body, $showString );
// Return the replaced result
return $showString;
}


$template_file = "template.html";
$new_file = "new.html";
// Template file pointer
$template_juBing = fopen ( $template_file, "r" ) ;
//The file pointer to be generated
$newFile_juBing = fopen ( $new_file, "w" );

// Method 1: Get the overall template content string, replace it and assign it to the new file
$templateString = fread ( $template_juBing, filesize ( $template_file ) );
$showString = replaceTemplateString ( $templateString ); // Replace the string in the template
fwrite ( $newFile_juBing, $showString ); // Write the replaced content into the generated HTML file

/*
// Method 2 loops to read the content string of each line of the template, replace it and add it to the new file in sequence
while ( ! feof ( $template_juBing ) ) { // feof() function checks whether End of file reached. Returns TRUE if the file pointer reaches the end or an error occurs. Otherwise, return FALSE (including socket timeout and other situations).
$templateString = fgets ( $template_juBing ); // fgets(file,length) reads a line from the file pointer and returns a string with a length of at most length - 1 bytes, including newlines. If length is not specified, it defaults to 1K, or 1024 bytes.
$showString = replaceTemplateString ($templateString);
fwrite ($newFile_juBing, $showString); // When writing content to the opened pointer file for the first time, the original content in the pointer file will be replaced. Before the pointer is closed, the fwrite function will add content after the added content
}
*/
// Close the file pointer
fclose ( $newFile_juBing );
fclose ( $template_juBing );

/*
The relationship between database and static page
Usually, after adding a piece of information in the database, a static page of the information is generated, so it is best to add a field in the database table to store the path of the corresponding static page File name for future modification, delete

Template replacement
Generally speaking, if you need to modify the template of a static HTML page, the usual approach is to delete all generated HTML pages and then recreate a new HTML page. (Or in other words, re-overwrite and generate them all)

Dynamic operations on static pages
Sometimes, some dynamic operations also need to be performed on the static HTML pages created. For example, each news article in the news system needs to count the click rate.
You can use an image control with a width and height of 0 pixels to hide the call to a php page to implement the page counter function, such as
Implementation method of generating static pages based on PHP_PHP tutorial

Static page of link directory
Usually for systems that use static pages, the directory page of the link list will also generate static HTML files for visitors to browse
Note that every time a database entry is added or removed Information will have an impact on the linked list, so the static page of the linked directory needs to be updated every time database information is added or deleted.
Paging design can be completed by creating multiple static pages with linked directories.
*/


// Method 2 generates based on the buffer
ob_start (); // When the buffer is activated and there is ob_end_clean(), all non-file header information will not be output. Printed to the page, instead saved in an internal buffer. If there is no ob_end_clean(), the information is both stored in the internal buffer and output and printed
?>
this is test Output Control
echo "
this is test Output Control
";
include_once 'cache/newFile.php';

$contents = ob_get_contents (); // Get the information stored in the buffer so far. The buffer only saves the content that will be output and printed to the page browser. PHP execution code will not be saved.
// $contents = ob_get_clean(); // Get the information stored in the buffer so far and close the clear buffer

// ob_end_flush(); // Output the information stored in the print buffer so far and close the clearing Buffer

ob_end_clean (); // Turn off clearing buffer contents

file_put_contents ( $new_file, $contents ); // Write content to the file

?>


template.html
Copy code The code is as follows:
<br><br><br>

% title% <br><br><br>

%title%




<br><br><br>

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/326972.htmlTechArticlet1.php Copy the code as follows: ?php // Method 1 generates a static page based on the template // Use the replaceTemplateString function Specify the string function replaceTemplateString(...
in the replacement template
Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Explain the concept of a PHP session in simple terms.Explain the concept of a PHP session in simple terms.Apr 26, 2025 am 12:09 AM

PHPsessionstrackuserdataacrossmultiplepagerequestsusingauniqueIDstoredinacookie.Here'showtomanagethemeffectively:1)Startasessionwithsession_start()andstoredatain$_SESSION.2)RegeneratethesessionIDafterloginwithsession_regenerate_id(true)topreventsessi

How do you loop through all the values stored in a PHP session?How do you loop through all the values stored in a PHP session?Apr 26, 2025 am 12:06 AM

In PHP, iterating through session data can be achieved through the following steps: 1. Start the session using session_start(). 2. Iterate through foreach loop through all key-value pairs in the $_SESSION array. 3. When processing complex data structures, use is_array() or is_object() functions and use print_r() to output detailed information. 4. When optimizing traversal, paging can be used to avoid processing large amounts of data at one time. This will help you manage and use PHP session data more efficiently in your actual project.

Explain how to use sessions for user authentication.Explain how to use sessions for user authentication.Apr 26, 2025 am 12:04 AM

The session realizes user authentication through the server-side state management mechanism. 1) Session creation and generation of unique IDs, 2) IDs are passed through cookies, 3) Server stores and accesses session data through IDs, 4) User authentication and status management are realized, improving application security and user experience.

Give an example of how to store a user's name in a PHP session.Give an example of how to store a user's name in a PHP session.Apr 26, 2025 am 12:03 AM

Tostoreauser'snameinaPHPsession,startthesessionwithsession_start(),thenassignthenameto$_SESSION['username'].1)Usesession_start()toinitializethesession.2)Assigntheuser'snameto$_SESSION['username'].Thisallowsyoutoaccessthenameacrossmultiplepages,enhanc

What are some common problems that can cause PHP sessions to fail?What are some common problems that can cause PHP sessions to fail?Apr 25, 2025 am 12:16 AM

Reasons for PHPSession failure include configuration errors, cookie issues, and session expiration. 1. Configuration error: Check and set the correct session.save_path. 2.Cookie problem: Make sure the cookie is set correctly. 3.Session expires: Adjust session.gc_maxlifetime value to extend session time.

How do you debug session-related issues in PHP?How do you debug session-related issues in PHP?Apr 25, 2025 am 12:12 AM

Methods to debug session problems in PHP include: 1. Check whether the session is started correctly; 2. Verify the delivery of the session ID; 3. Check the storage and reading of session data; 4. Check the server configuration. By outputting session ID and data, viewing session file content, etc., you can effectively diagnose and solve session-related problems.

What happens if session_start() is called multiple times?What happens if session_start() is called multiple times?Apr 25, 2025 am 12:06 AM

Multiple calls to session_start() will result in warning messages and possible data overwrites. 1) PHP will issue a warning, prompting that the session has been started. 2) It may cause unexpected overwriting of session data. 3) Use session_status() to check the session status to avoid repeated calls.

How do you configure the session lifetime in PHP?How do you configure the session lifetime in PHP?Apr 25, 2025 am 12:05 AM

Configuring the session lifecycle in PHP can be achieved by setting session.gc_maxlifetime and session.cookie_lifetime. 1) session.gc_maxlifetime controls the survival time of server-side session data, 2) session.cookie_lifetime controls the life cycle of client cookies. When set to 0, the cookie expires when the browser is closed.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

mPDF

mPDF

mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)