我們有一個VOIP服務器,用於存儲通話記錄的wav文件。我的意圖是將一個PHP文件放在一起,我可以在文件的URL中傳遞calldate和uniqueid值(因爲服務器將這些文件存儲爲文件名的一部分)以檢索文件的鏈接。獲取PHP中的文件鏈接
「解析錯誤:語法錯誤,在/var/www/html/maint/helloworld.php意想不到的$結束第42行」
但是,試圖這樣做時,我得到以下錯誤
<?php
function getRecordingLink($callDate, $uniqueId){
$callDate_arr = explode(' ', $callDate);
$removeChar = array('-',':');
foreach($callDate_arr as $value){
$callDate_arr_adj[] = str_replace($removeChar,'',$value);
}
$audioDirectory_array = array();
if ($handle = opendir('/var/spool/asterisk/monitor/')) {
while (false != ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
$audioDirectory_array[] = $file;
}
}
closedir($handle);
}
foreach($audioDirectory_array as $key => $value){
if (preg_match ("/".$uniqueId."/i", $value)) {
if(file_exists('/var/spool/asterisk/monitor/'.$value)){
$wavFile = $value;
//return '<a href="/maint/modules/cdrreport/monitor/'.$wavFile.'" target="_blank">Recorded File</a>';
return '/maint/cache/monitor/' . $wavFile;
}
}else{
//return "Not Recorded";
}
getRecordingLink ('20110513','1305274000.2'); //sample calldate and uniqueid values for testing
?>
下面是MySQL數據庫表從那裏我將拿起值的描述傳遞到這個網址calldate和uniqueid`
mysql> describe cdr
-> ;
+-------------+--------------+------+-----+---------------------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+--------------+------+-----+---------------------+-------+
| calldate | datetime | NO | | 0000-00-00 00:00:00 | |
| clid | varchar(80) | NO | | | |
| src | varchar(80) | NO | | | |
| dst | varchar(80) | NO | | | |
| dcontext | varchar(80) | NO | | | |
| channel | varchar(80) | NO | | | |
| dstchannel | varchar(80) | NO | | | |
| lastapp | varchar(80) | NO | | | |
| lastdata | varchar(80) | NO | | | |
| duration | int(11) | NO | | 0 | |
| billsec | int(11) | NO | | 0 | |
| disposition | varchar(45) | NO | | | |
| amaflags | int(11) | NO | | 0 | |
| accountcode | varchar(20) | NO | | | |
| uniqueid | varchar(32) | NO | | | |
| userfield | varchar(255) | NO | | | |
+-------------+--------------+------+-----+---------------------+-------+
錯誤信息是什麼意思?只是'內部服務器錯誤'?你能打開你的服務器上的調試或更好的錯誤信息嗎? – mdm 2011-06-08 14:06:19
只是'內部服務器錯誤' - 我沒有試過打開調試,但我可以看看如何做到這一點。我不是特別熟悉php環境,我只是從VOIP服務器上的其他php文件中借用了這段代碼,因爲它有一個在PHP中開發的gui – 2011-06-08 14:15:05
好的。說實話,你不會從StackOveflow或任何人(包括你自己)得到任何有價值的答案,而不能很好地理解錯誤的原因,或至少一些更多的上下文信息。獲取更好的錯誤信息,編輯你的文章以包含它,並且你應該得到更有幫助的迴應:) – mdm 2011-06-08 14:18:45