Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在块中使用函数,PHP_Php_String_Function - Fatal编程技术网

在块中使用函数,PHP

在块中使用函数,PHP,php,string,function,Php,String,Function,如何在(EOT函数/文本块)中使用函数,为了更好地理解,我想让您看看我的示例: include "db.inc.php"; $sql="SELECT * FROM image"; $result = mysqli_query($conn, $sql) or die(mysqli_error($mysqli)); while($topic_info = mysqli_fetch_array($result)){ $img_id=$topic_info

如何在(EOT函数/文本块)中使用函数,为了更好地理解,我想让您看看我的示例:

include "db.inc.php";
$sql="SELECT * FROM image";
$result = mysqli_query($conn, $sql) or die(mysqli_error($mysqli));
while($topic_info = mysqli_fetch_array($result)){
    $img_id=$topic_info['id'];
    $img_name=$topic_info['name'];
    
    $display_block .= <<<END_OF_TEXT
        <div>
        <img src="images/${img_name}">
        <strong>print_r($topic_info)</strong>
    </div>
END_OF_TEXT;
    
}

echo $display_block;
包括“db.inc.php”;
$sql=“从图像中选择*”;
$result=mysqli_query($conn,$sql)或die(mysqli_error($mysqli));
while($topic\u info=mysqli\u fetch\u数组($result)){
$img_id=$topic_info['id'];
$img_name=$topic_info['name'];

$display_block.=您不能在herdoc文本块内进行函数调用,因此您将无法以这种方式递归打印该数组

您可以做的是将print_r的可选第二个参数设置为TRUE,这将返回打印的字符串,而不是“打印”字符串。这样,您可以将其分配给变量,并像其他变量一样将其包含在HEREDOC块中

while($topic_info = mysqli_fetch_array($result)) {

    $img_id=$topic_info['id'];
    $img_name=$topic_info['name'];
    $topic_info_string = print_r($topic_info, true);

    $display_block .= <<<END_OF_TEXT
    <div>
        <img src="images/{$img_name}"/>
        <strong>$topic_info_string</strong>
    </div>
END_OF_TEXT;

}
while($topic\u info=mysqli\u fetch\u数组($result)){
$img_id=$topic_info['id'];
$img_name=$topic_info['name'];
$topic\u info\u string=print\r($topic\u info,true);

$display_block.=在代码中使用
die(mysqli_error($$conn));
是一个非常糟糕的主意,因为它可能会泄漏敏感信息。请参阅本文以获取更多解释:我读了这篇文章,这很有帮助,你能告诉我应该在哪里使用这行代码mysqli_report(mysqli_report_error | mysqli_report|STRICT);而不是od die?我的意思是我应该在mysqli_connect()之后或其他地方编写代码吗?只需在
mysqli_connect()之前添加该行