2778085001

WBOY
WBOY原創
2016-07-28 08:29:47755瀏覽

定義和用法

eval() 函數把字串按照 PHP 程式碼來計算。

字串必須是合法的 PHP 程式碼,且必須以分號結尾。

如果沒有在程式碼字串中呼叫 return 語句,則傳回 NULL。如果程式碼中存在解析錯誤,則 eval() 函數傳回 false。

文法

?

eval(phpcode)

eval(phpcode)
参数 描述
phpcode 必需。规定要计算的 PHP 代码。

提示與註解

註解:

回傳語句會立即終止字串的計算。

註解:此函數對於在資料庫文字欄位中供日後計算而進行的程式碼儲存很有用。

範例

?

<?php

$string= "beautiful";

$time= "winter";

$str= 'This is a $string $time morning!';

echo$str. "<br />";

eval("$str = "$str";");

echo$str;

?>   

<?php

$string= "beautiful";

$time= "winter";

$str= 'This is a $string $time morning!';

echo$str. "<br>";

<br>eval() 函数在CodeIgniter框架里也有用到。在 /system/database/DB.php 文件中,根据系统的配置动态的定义了一个类 CI_DB,具体代码片段如下:

eval("$str = "$str";"); echo$str;

if( ! isset($active_record) OR $active_record== TRUE)

    {

        require_once(BASEPATH.'database/DB_active_rec.php');

        if( ! class_exists('CI_DB'))

        {

            eval('class CI_DB extends CI_DB_active_record { }');

        }

    }

    else

    {

        if( ! class_exists('CI_DB'))

        {

            eval(<code>'class CI_DB extends CI_DB_driver { }');

        }

    }

    require_once(BASEPATH.'database/drivers/'.$params['dbdriver'].'/'.$params['dbdriver'].'_driver.php');

    // Instantiate the DB adapter

    $driver= 'CI_DB_'.$params['dbdriver'].'_driver';

    $DB= new$driver($params);

?>   

輸出:

This is a $string $time morning!

This is a beautiful winter morning!?
if( ! isset($active_record) OR $ active_record== TRUE)    {     <code>require_once(BASEPATH.'database/DB_active_rec.php'); if( ! class_exists('CI_DB' ))        {       >('class CI_DB extends CI_DB_active_record { }');        }} >    }    else    {        if( ! class_existsif( ! class_exists code><code>('CI_DB'))        {             eval(<code>'class CI_DB extends CI_DB_driver { }'<code>'class CI_DB extends CI_DB_driver { }');<code>        }    }} ><code>    require_once(BASEPATH.'database/drivers/'. $params['dbdriver'].'/'.$params['dbdriver'].'_driver.php');    // Instantiate the DB adapter     $driver= 'CI_DB_'.$params['dbdriver'].'_driver';    $DB= new$driver($params );
以上就介紹了 2778085001,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn