A. 判斷 php 對象類型 是否有方法
我們的中文真是博大精深呀,你的問題竟然隱藏兩種含義:
1、如果是判斷對象類型:
<?php
$a = 123;
//$a = function (){};
var_mp(gettype($a));
?>
使用自帶函數: gettype
2、如果判斷對象是否存在什麼方法
<?php
class test {
function t(){
}
}
$a = new test();
var_mp(method_exists($a,'t'));
?>
使用函數:method_exists
B. php中根據類名怎麼動態獲取已定義的類對象並動態調用某個方法
在 PHP 中,可以通過類名來動態獲取已定義的類對象,然後再調用類的方法。可以使用以下兩個函數來實現:
1. `class_exists()` 函數可以判斷一個類是否已經定義。
2. `call_user_func()` 函數可以動態調用一個方法。
下面是示例代碼:
```
// 判斷類是否已定義
if (class_exists('ClassName')) {
// 實例化類對象
$obj = new ClassName();
// 動態調用方法
call_user_func(array($obj, 'methodName'));
}
```
在這個示例中,`ClassName` 是要動態獲取的類名,`methodName` 是要調用的方法名。首先,使用 `class_exists()` 函數判斷類是否已經定義,如果已經定義,則使用 `new` 關鍵字實例化類對象,並將其賦值給 `$obj` 變數。然後,使用 `call_user_func()` 函數動態調用方法。`array($obj, 'methodName')` 表示要調用 `$obj` 對象的 `methodName()` 方法。
需要注意的是,如果要調用的方法需要傳遞參數,可以在 `call_user_func()` 函數的第二個參數之後依次添加參數值。例如,如果要傳遞一個參數,可以這樣調用:
```
call_user_func(array($obj, 'methodName'), $param1);
```
其中,`$param1` 是要傳遞的參數值。
C. phpword怎麼獲取doc對象內容
<?
// 建立一個指向新COM組件的索引
$word = new COM(」word.application」) or die(」Can't start Word!」);
// 顯示目前正在使用的Word的版本號
//echo 「Loading Word, v. {$word->Version}<br>」;
// 把它的可見性設置為0(假),如果要使它在最前端打開,使用1(真)
// to open the application in the forefront, use 1 (true)
//$word->Visible = 0;
//打?一個文檔
$word->Documents->OPen(」d:\myweb\muban.doc」);
//讀取文檔內容
$test= $word->ActiveDocument->content->Text;
echo $test;
echo 「<br>」;
//將文檔中需要換的變數更換一下
$test=str_replace(」<{變數}>」,」這是變數」,$test);
echo $test;
$word->Documents->Add();
// 在新文檔中添加文字
$word->Selection->TypeText(」$test」);
//把文檔保存在目錄中
$word->Documents[1]->SaveAs(」d:/myweb/comtest.doc」);
// 關閉與COM組件之間的連接
$word->Quit();
?>
D. php 判斷 對象 是否為空
判斷對象是否為空?應該是判斷對象是否創建成功吧?
@$obj1=new ca; //如果CA類沒有必然報錯,先屏蔽錯誤
is_object($obj1); //判斷$obj1是否為對象,也可以isset來判斷