PHP如何将输出的内容放到一个变量中
我也不知道我问题标题的描述是否正确。
我正在做一个项目,里面用到了一些php + html格式的代码,然后我需要把上面的所有的输出的html结果保存到一个缓存中。
我现在唯一的办法就是把要保存的php+html格式代码写成类似
$cache = "html".php."html";
然后才能缓存这个$cache变量。
有没有办法让我把这些php + html代码放到一个文件中,然后读取他们输出的效果到一个变量里面?
例如我有这么一些代码
<code><div class="article row_3" onmouseover="this.style.cssText='background-color:<?php echo $hue[$i-1]; ?>'" onmouseout="this.style.cssText='background: #333;'"> <p><?php $post_describe = get_post_meta($post->ID,'post_describe',true);if(!$post_describe){echo strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 142, '');}else{echo $post_describe;}?></p> </div></code>
代码中有一些if判断之类的语句,我不方便吧他们全部写在一行,然后丢一个变量里面。这样很不利于后期修改。
所以我寻求其他更好的办法。
我发现使用include 会直接输出文件中的内容,而不会返回内容给一个变量。
回复内容:
我也不知道我问题标题的描述是否正确。
我正在做一个项目,里面用到了一些php + html格式的代码,然后我需要把上面的所有的输出的html结果保存到一个缓存中。
我现在唯一的办法就是把要保存的php+html格式代码写成类似
$cache = "html".php."html";
然后才能缓存这个$cache变量。
有没有办法让我把这些php + html代码放到一个文件中,然后读取他们输出的效果到一个变量里面?
例如我有这么一些代码
<code><div class="article row_3" onmouseover="this.style.cssText='background-color:<?php echo $hue[$i-1]; ?>'" onmouseout="this.style.cssText='background: #333;'"> <p><?php $post_describe = get_post_meta($post->ID,'post_describe',true);if(!$post_describe){echo strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 142, '');}else{echo $post_describe;}?></p> </div></code>
代码中有一些if判断之类的语句,我不方便吧他们全部写在一行,然后丢一个变量里面。这样很不利于后期修改。
所以我寻求其他更好的办法。
我发现使用include 会直接输出文件中的内容,而不会返回内容给一个变量。
这是个好问题。实际上这就是在直接把php当模板语言来用。
http://php.net/manual/en/function.includ...
看这里的 Example #6 Using output buffering to include a PHP file into a string
不被php代码约束的内容输出到响应,你是阻拦不了的,只能这样用重定向的方法来捕获之。
解决了,在include中间加入
<code>ob_start(); 你的代码 $html = ob_get_contents(); ob_end_clean();</code>
ob_start之后可以把输出的内容放到缓冲区内,而不是直接返回给用户,然后通过ob_get_contents获取到

ホット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 にアップグレードする方法について説明します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。
