【发布时间】:2015-05-16 01:51:01
【问题描述】:
我有两个 PHP 函数可以在单独的 php 页面上独立运行。
第一页:
<?php
function shortURL($url) {
$ch = curl_init();
$timeout = 5;
curl_setopt($ch,CURLOPT_URL,'http://tinyurl.com/api-create.php?url='.$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
$short_url = curl_exec($ch);
curl_close($ch);
return $short_url;
}
$url = "http://technoflirt.com/tech/2011/01/11/running-php-script-host/";
$short_url = shortURL($url);
echo "Actual url =". $url . "<br />";
echo "Shortened url = <a href=$short_url>$short_url</a> <br />";
?>
第二页是一个现有的通过电子邮件发送信息的 sn-p。我尝试将函数组合在一起,但没有成功,我将函数 shortURL($url) 粘贴到函数 email() 上方,然后粘贴 $url 和 $short_url 并将 echo 语句更改为 $message。这会导致致命错误:PHP 致命错误:调用未定义函数 shortURL() 所以我知道这不起作用。如何成功转换 tinyURL,然后将其合并到函数 email 中?
function shortURL($url) {
$ch = curl_init();
$timeout = 5;
curl_setopt($ch,CURLOPT_URL,'http://tinyurl.com/api-create.php?url='.$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
$short_url = curl_exec($ch);
curl_close($ch);
return $short_url;
function email($array, $task, $techinfo,$additionalinfo = array()) {
$to = $techinfo["EmpHTEmail"];
$url = "http://technoflirt.com/tech/2011/01/11/running-php-script-host/";
$short_url = shortURL($url);
$subject = ($task == "unschedule") ? '' : ($task == "notify" ? "": "Else Message");
$message = "";
if($task == "unschedule")
$message .="Work Order #:" . $array[0]["WorkOrderNum"] . " is cancelled.";
elseif($task == "notify")
{
$message .="".$additionalinfo[0]['sShortName']." (" . $array[0]["WorkOrderNum"] . ") <BR>".$additionalinfo[0]['sAddressNum']." ".$additionalinfo[0]['sAddressLine1'].", ".$additionalinfo[0]['sCityName']."<BR>".$additionalinfo[0]['sPhone1'] . " - ".$_SESSION['Latitude'].",".$_SESSION['Longitude']."<BR>";
$message .="". $additionalinfo[0]['JobDescription'] . " - ". $url . "";
$message .="Actual url =". $url . "";
$message .="Shortened url = $short_url";
}
$message .="";
// Always set content-type when sending HTML email
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
mail($to, $subject, $message, $headers);
}
【问题讨论】:
标签: php