PHP将函数输出定义为变量

时间:2013-11-18 18:22:35

标签: php function variables output

假设我有一个带来标题的功能,例如:

输出“title”的

get_title();

我想将其设置为$title = get_title();

等变量

不幸的是,这只是回显了函数,并没有为变量捕获它。我该怎么做?

我想将变量用于if语句。

if ($title == "no title") { stop }

3 个答案:

答案 0 :(得分:4)

您必须返回变量而不是回显变量。

function get_title() {
    return "title";
}

答案 1 :(得分:3)

你只需要返回标题。

function getTitle(){
    $title="title";
    //echo $title;
    return $title; //return instead of echoing
}

答案 2 :(得分:3)

如果您无权修改功能get_title,则可以始终使用output buffers

<?php
ob_start();
get_title()
$title = ob_get_contents();

明确的解决方案是返回title的值而不是回显它。

<?php

function get_title() {
    $title = // black box //;
    return $title;
}

$title = get_title();

正如您所指出的,如果您不希望函数在屏幕上输出任何内容,您可以使用ob_end_clean()来销毁get_title()可能具有的任何输出。