本文整理汇总了PHP中z_path函数的典型用法代码示例。如果您正苦于以下问题:PHP z_path函数的具体用法?PHP z_path怎么用?PHP z_path使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了z_path函数的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: item_redir_and_replace_images
function item_redir_and_replace_images($body, $images, $cid)
{
$origbody = $body;
$newbody = '';
$cnt = 1;
$pos = get_bb_tag_pos($origbody, 'url', 1);
while ($pos !== false && $cnt < 1000) {
$search = '/\\[url\\=(.*?)\\]\\[!#saved_image([0-9]*)#!\\]\\[\\/url\\]' . '/is';
$replace = '[url=' . z_path() . '/redir/' . $cid . '?f=1&url=' . '$1' . '][!#saved_image' . '$2' . '#!][/url]';
$newbody .= substr($origbody, 0, $pos['start']['open']);
$subject = substr($origbody, $pos['start']['open'], $pos['end']['close'] - $pos['start']['open']);
$origbody = substr($origbody, $pos['end']['close']);
if ($origbody === false) {
$origbody = '';
}
$subject = preg_replace($search, $replace, $subject);
$newbody .= $subject;
$cnt++;
$pos = get_bb_tag_pos($origbody, 'url', 1);
}
$newbody .= $origbody;
$cnt = 0;
foreach ($images as $image) {
// We're depending on the property of 'foreach' (specified on the PHP website) that
// it loops over the array starting from the first element and going sequentially
// to the last element
$newbody = str_replace('[!#saved_image' . $cnt . '#!]', '[img]' . $image . '[/img]', $newbody);
$cnt++;
}
return $newbody;
}
示例2: hostxrd_init
function hostxrd_init(&$a)
{
header('Access-Control-Allow-Origin: *');
header("Content-type: text/xml");
$pubkey = get_config('system', 'site_pubkey');
if (!$pubkey) {
$res = new_keypair(1024);
set_config('system', 'site_prvkey', $res['prvkey']);
set_config('system', 'site_pubkey', $res['pubkey']);
}
$tpl = file_get_contents('view/xrd_host.tpl');
echo str_replace(array('$zhost', '$zroot', '$domain', '$zot_post', '$bigkey'), array($a->get_hostname(), z_root(), z_path(), z_root() . '/post', salmon_key(get_config('system', 'site_pubkey'))), $tpl);
session_write_close();
exit;
}
示例3: hostxrd_init
function hostxrd_init(&$a)
{
header('Access-Control-Allow-Origin: *');
header("Content-type: text/xml");
$pubkey = get_config('system', 'site_pubkey');
if (!$pubkey) {
// should only have to ever do this once.
$res = openssl_pkey_new(array('digest_alg' => 'sha1', 'private_key_bits' => 4096, 'encrypt_key' => false));
$prvkey = '';
openssl_pkey_export($res, $prvkey);
// Get public key
$pkey = openssl_pkey_get_details($res);
$pubkey = $pkey["key"];
set_config('system', 'site_prvkey', $prvkey);
set_config('system', 'site_pubkey', $pubkey);
}
$tpl = file_get_contents('view/xrd_host.tpl');
echo str_replace(array('$zhost', '$zroot', '$domain', '$zot_post', '$bigkey'), array($a->get_hostname(), z_root(), z_path(), z_root() . '/post', salmon_key(get_config('system', 'site_pubkey'))), $tpl);
session_write_close();
exit;
}
示例4: localize_item
/**
* Render actions localized
*/
function localize_item(&$item)
{
$Text = $item['body'];
$saved_image = '';
$img_start = strpos($Text, '[img]data:');
$img_end = strpos($Text, '[/img]');
if ($img_start !== false && $img_end !== false && $img_end > $img_start) {
$start_fragment = substr($Text, 0, $img_start);
$img_start += strlen('[img]');
$saved_image = substr($Text, $img_start, $img_end - $img_start);
$end_fragment = substr($Text, $img_end + strlen('[/img]'));
$Text = $start_fragment . '[!#saved_image#!]' . $end_fragment;
$search = '/\\[url\\=(.*?)\\]\\[!#saved_image#!\\]\\[\\/url\\]' . '/is';
$replace = '[url=' . z_path() . '/redir/' . $item['contact-id'] . '?f=1&url=' . '$1' . '][!#saved_image#!][/url]';
$Text = preg_replace($search, $replace, $Text);
if (strlen($saved_image)) {
$item['body'] = str_replace('[!#saved_image#!]', '[img]' . $saved_image . '[/img]', $Text);
}
}
$xmlhead = "<" . "?xml version='1.0' encoding='UTF-8' ?" . ">";
if ($item['verb'] === ACTIVITY_LIKE || $item['verb'] === ACTIVITY_DISLIKE) {
$r = q("SELECT * from `item`,`contact` WHERE \n\t\t\t\t`item`.`contact-id`=`contact`.`id` AND `item`.`uri`='%s';", dbesc($item['parent-uri']));
if (count($r) == 0) {
return;
}
$obj = $r[0];
$author = '[url=' . $item['author-link'] . ']' . $item['author-name'] . '[/url]';
$objauthor = '[url=' . $obj['author-link'] . ']' . $obj['author-name'] . '[/url]';
switch ($obj['verb']) {
case ACTIVITY_POST:
switch ($obj['object-type']) {
case ACTIVITY_OBJ_EVENT:
$post_type = t('event');
break;
default:
$post_type = t('status');
}
break;
default:
if ($obj['resource-id']) {
$post_type = t('photo');
$m = array();
preg_match("/\\[url=([^]]*)\\]/", $obj['body'], $m);
$rr['plink'] = $m[1];
} else {
$post_type = t('status');
}
}
$plink = '[url=' . $obj['plink'] . ']' . $post_type . '[/url]';
switch ($item['verb']) {
case ACTIVITY_LIKE:
$bodyverb = t('%1$s likes %2$s\'s %3$s');
break;
case ACTIVITY_DISLIKE:
$bodyverb = t('%1$s doesn\'t like %2$s\'s %3$s');
break;
}
$item['body'] = sprintf($bodyverb, $author, $objauthor, $plink);
}
if ($item['verb'] === ACTIVITY_FRIEND) {
if ($item['object-type'] == "" || $item['object-type'] !== ACTIVITY_OBJ_PERSON) {
return;
}
$Aname = $item['author-name'];
$Alink = $item['author-link'];
$xmlhead = "<" . "?xml version='1.0' encoding='UTF-8' ?" . ">";
$obj = parse_xml_string($xmlhead . $item['object']);
$links = parse_xml_string($xmlhead . "<links>" . unxmlify($obj->link) . "</links>");
$Bname = $obj->title;
$Blink = "";
$Bphoto = "";
foreach ($links->link as $l) {
$atts = $l->attributes();
switch ($atts['rel']) {
case "alternate":
$Blink = $atts['href'];
case "photo":
$Bphoto = $atts['href'];
}
}
$A = '[url=' . zrl($Alink) . ']' . $Aname . '[/url]';
$B = '[url=' . zrl($Blink) . ']' . $Bname . '[/url]';
if ($Bphoto != "") {
$Bphoto = '[url=' . zrl($Blink) . '][img]' . $Bphoto . '[/img][/url]';
}
$item['body'] = sprintf(t('%1$s is now friends with %2$s'), $A, $B) . "\n\n\n" . $Bphoto;
}
if ($item['verb'] === ACTIVITY_TAG) {
$r = q("SELECT * from `item`,`contact` WHERE \n\t\t`item`.`contact-id`=`contact`.`id` AND `item`.`uri`='%s';", dbesc($item['parent-uri']));
if (count($r) == 0) {
return;
}
$obj = $r[0];
$author = '[url=' . zrl($item['author-link']) . ']' . $item['author-name'] . '[/url]';
$objauthor = '[url=' . zrl($obj['author-link']) . ']' . $obj['author-name'] . '[/url]';
switch ($obj['verb']) {
case ACTIVITY_POST:
//.........这里部分代码省略.........
示例5: absurl
/**
* @brief Return absolut URL for given $path.
*
* @param string $path
*
* @return string
*/
function absurl($path)
{
if (strpos($path, '/') === 0) {
return z_path() . $path;
}
return $path;
}
示例6: item_redir_and_replace_images
function item_redir_and_replace_images($body, $images, $cid)
{
$origbody = $body;
$newbody = '';
for ($i = 0; $i < count($images); $i++) {
$search = '/\\[url\\=(.*?)\\]\\[!#saved_image' . $i . '#!\\]\\[\\/url\\]' . '/is';
$replace = '[url=' . z_path() . '/redir/' . $cid . '?f=1&url=' . '$1' . '][!#saved_image' . $i . '#!][/url]';
$img_end = strpos($origbody, '[!#saved_image' . $i . '#!][/url]') + strlen('[!#saved_image' . $i . '#!][/url]');
$process_part = substr($origbody, 0, $img_end);
$origbody = substr($origbody, $img_end);
$process_part = preg_replace($search, $replace, $process_part);
$newbody = $newbody . $process_part;
}
$newbody = $newbody . $origbody;
$cnt = 0;
foreach ($images as $image) {
// We're depending on the property of 'foreach' (specified on the PHP website) that
// it loops over the array starting from the first element and going sequentially
// to the last element
$newbody = str_replace('[!#saved_image' . $cnt . '#!]', '[img]' . $image . '[/img]', $newbody);
$cnt++;
}
return $newbody;
}
示例7: notification
function notification($params)
{
logger('notification: entry', LOGGER_DEBUG);
$a = get_app();
$banner = t('Friendica Notification');
$product = FRIENDICA_PLATFORM;
$siteurl = z_path();
$thanks = t('Thank You,');
$sitename = get_config('config', 'sitename');
$site_admin = sprintf(t('%s Administrator'), $sitename);
$sender_name = $product;
$sender_email = t('noreply') . '@' . $a->get_hostname();
if (array_key_exists('item', $params)) {
$title = $params['item']['title'];
$body = $params['item']['body'];
} else {
$title = $body = '';
}
if ($params['type'] == NOTIFY_MAIL) {
$subject = sprintf(t('New mail received at %s'), $sitename);
$preamble = sprintf(t('%s sent you a new private message at %s.'), $params['source_name'], $sitename);
$sitelink = t('Please visit %s to view and/or reply to your private messages.');
$tsitelink = sprintf($sitelink, $siteurl . '/message');
$hsitelink = sprintf($sitelink, '<a href="' . $siteurl . '/message">' . $sitename . '</a>');
$itemlink = '';
}
if ($params['type'] == NOTIFY_COMMENT) {
$subject = sprintf(t('%s commented on an item at %s'), $params['source_name'], $sitename);
$preamble = sprintf(t('%s commented on an item/conversation you have been following.'), $params['source_name']);
$sitelink = t('Please visit %s to view and/or reply to the conversation.');
$tsitelink = sprintf($sitelink, $siteurl);
$hsitelink = sprintf($sitelink, '<a href="' . $siteurl . '">' . $sitename . '</a>');
$itemlink = $params['link'];
}
if ($params['type'] == NOTIFY_WALL) {
$preamble = $subject = sprintf(t('%s posted to your profile wall at %s'), $params['source_name'], $sitename);
$sitelink = t('Please visit %s to view and/or reply to the conversation.');
$tsitelink = sprintf($sitelink, $siteurl);
$hsitelink = sprintf($sitelink, '<a href="' . $siteurl . '">' . $sitename . '</a>');
$itemlink = $params['link'];
}
if ($params['type'] == NOTIFY_TAGSELF) {
$preamble = $subject = sprintf(t('%s tagged you at %s'), $params['source_name'], $sitename);
$sitelink = t('Please visit %s to view and/or reply to the conversation.');
$tsitelink = sprintf($sitelink, $siteurl);
$hsitelink = sprintf($sitelink, '<a href="' . $siteurl . '">' . $sitename . '</a>');
$itemlink = $params['link'];
}
if ($params['type'] == NOTIFY_TAGSHARE) {
$preamble = $subject = sprintf(t('%s tagged your post at %s'), $params['source_name'], $sitename);
$sitelink = t('Please visit %s to view and/or reply to the conversation.');
$tsitelink = sprintf($sitelink, $siteurl);
$hsitelink = sprintf($sitelink, '<a href="' . $siteurl . '">' . $sitename . '</a>');
$itemlink = $params['link'];
}
if ($params['type'] == NOTIFY_INTRO) {
$subject = sprintf(t('Introduction received at %s'), $sitename);
$preamble = sprintf(t('You\'ve received an introduction from \'%s\' at %s'), $params['source_name'], $sitename);
$body = sprintf(t('You may visit their profile at %s'), $params['source_link']);
$sitelink = t('Please visit %s to approve or reject the introduction.');
$tsitelink = sprintf($sitelink, $siteurl);
$hsitelink = sprintf($sitelink, '<a href="' . $siteurl . '">' . $sitename . '</a>');
$itemlink = $params['link'];
}
if ($params['type'] == NOTIFY_SUGGEST) {
$subject = sprintf(t('Friend suggestion received at %s'), $sitename);
$preamble = sprintf(t('You\'ve received a friend suggestion from \'%s\' at %s'), $params['source_name'], $sitename);
$body = t('Name:') . ' ' . $params['item']['name'] . "\n";
$body .= t('Photo:') . ' ' . $params['item']['photo'] . "\n";
$body .= sprintf(t('You may visit their profile at %s'), $params['item']['url']);
$sitelink = t('Please visit %s to approve or reject the suggestion.');
$tsitelink = sprintf($sitelink, $siteurl);
$hsitelink = sprintf($sitelink, '<a href="' . $siteurl . '">' . $sitename . '</a>');
$itemlink = $params['link'];
}
if ($params['type'] == NOTIFY_CONFIRM) {
}
// TODO - create notification entry in DB
// send email notification if notification preferences permit
require_once 'bbcode.php';
if (intval($params['notify_flags']) & intval($params['type'])) {
logger('notification: sending notification email');
push_lang($params['language']);
$textversion = strip_tags(html_entity_decode(bbcode(stripslashes(str_replace(array("\\r\\n", "\\r", "\\n"), "\n", $body))), ENT_QUOTES, 'UTF-8'));
$htmlversion = html_entity_decode(bbcode(stripslashes(str_replace(array("\\r\\n", "\\r", "\\n\\n", "\\n"), "<br />\n", $body))));
// load the template for private message notifications
$tpl = get_markup_template('email_notify_html.tpl');
$email_html_body = replace_macros($tpl, array('$banner' => $banner, '$product' => $product, '$preamble' => $preamble, '$sitename' => $sitename, '$siteurl' => $siteurl, '$source_name' => $parama['source_name'], '$source_link' => $params['source_link'], '$source_photo' => $params['source_photo'], '$username' => $params['to_name'], '$hsitelink' => $hsitelink, '$itemlink' => '<a href="' . $itemlink . '">' . $itemlink . '</a>', '$thanks' => $thanks, '$site_admin' => $site_admin, '$title' => stripslashes($title), '$htmlversion' => $htmlversion));
// load the template for private message notifications
$tpl = get_markup_template('email_notify_text.tpl');
$email_text_body = replace_macros($tpl, array('$banner' => $banner, '$product' => $product, '$preamble' => $preamble, '$sitename' => $sitename, '$siteurl' => $siteurl, '$source_name' => $parama['source_name'], '$source_link' => $params['source_link'], '$source_photo' => $params['source_photo'], '$username' => $params['to_name'], '$tsitelink' => $tsitelink, '$itemlink' => $itemlink, '$thanks' => $thanks, '$site_admin' => $site_admin, '$title' => stripslashes($title), '$textversion' => $textversion));
// logger('text: ' . $email_text_body);
// use the EmailNotification library to send the message
enotify::send(array('fromName' => $sender_name, 'fromEmail' => $sender_email, 'replyTo' => $sender_email, 'toEmail' => $params['to_email'], 'messageSubject' => $subject, 'htmlVersion' => $email_html_body, 'textVersion' => $email_text_body));
pop_lang();
}
}
示例8: message_content
//.........这里部分代码省略.........
if (count($r)) {
$prename = $r[0]['name'];
$preurl = $r[0]['url'];
$preid = $r[0]['id'];
}
}
$prefill = $preselect ? $prename : '';
// the ugly select box
$select = contact_select('messageto', 'message-to-select', $preselect, 4, true, false, false, 10);
$tpl = get_markup_template('prv_message.tpl');
$o .= replace_macros($tpl, array('$header' => t('Send Private Message'), '$to' => t('To:'), '$showinputs' => 'true', '$prefill' => $prefill, '$autocomp' => $autocomp, '$preid' => $preid, '$subject' => t('Subject:'), '$subjtxt' => x($_REQUEST, 'subject') ? strip_tags($_REQUEST['subject']) : '', '$text' => x($_REQUEST, 'body') ? escape_tags(htmlspecialchars($_REQUEST['body'])) : '', '$readonly' => '', '$yourmessage' => t('Your message:'), '$select' => $select, '$parent' => '', '$upload' => t('Upload photo'), '$insert' => t('Insert web link'), '$wait' => t('Please wait'), '$submit' => t('Submit')));
return $o;
}
if ($a->argc == 1) {
// list messages
$o .= $header;
$r = q("SELECT count(*) AS `total` FROM `mail` \n\t\t\tWHERE `mail`.`uid` = %d GROUP BY `parent-uri` ORDER BY `created` DESC", intval(local_user()), dbesc($myprofile));
if (count($r)) {
$a->set_pager_total($r[0]['total']);
}
$r = q("SELECT max(`mail`.`created`) AS `mailcreated`, min(`mail`.`seen`) AS `mailseen`, \n\t\t\t`mail`.* , `contact`.`name`, `contact`.`url`, `contact`.`thumb` , `contact`.`network`,\n\t\t\tcount( * ) as count\n\t\t\tFROM `mail` LEFT JOIN `contact` ON `mail`.`contact-id` = `contact`.`id` \n\t\t\tWHERE `mail`.`uid` = %d GROUP BY `parent-uri` ORDER BY `mailcreated` DESC LIMIT %d , %d ", intval(local_user()), intval($a->pager['start']), intval($a->pager['itemspage']));
if (!count($r)) {
info(t('No messages.') . EOL);
return $o;
}
$tpl = get_markup_template('mail_list.tpl');
foreach ($r as $rr) {
if ($rr['unknown']) {
$partecipants = sprintf(t("Unknown sender - %s"), $rr['from-name']);
} elseif (link_compare($rr['from-url'], $myprofile)) {
$partecipants = sprintf(t("You and %s"), $rr['name']);
} else {
$partecipants = sprintf(t("%s and You"), $rr['from-name']);
}
$o .= replace_macros($tpl, array('$id' => $rr['id'], '$from_name' => $partecipants, '$from_url' => $rr['network'] === NETWORK_DFRN ? $a->get_baseurl(true) . '/redir/' . $rr['contact-id'] : $rr['url'], '$sparkle' => ' sparkle', '$from_photo' => $rr['thumb'] ? $rr['thumb'] : $rr['from-photo'], '$subject' => template_escape($rr['mailseen'] ? $rr['title'] : '<strong>' . $rr['title'] . '</strong>'), '$delete' => t('Delete conversation'), '$body' => template_escape($rr['body']), '$to_name' => template_escape($rr['name']), '$date' => datetime_convert('UTC', date_default_timezone_get(), $rr['mailcreated'], t('D, d M Y - g:i A')), '$seen' => $rr['mailseen'], '$count' => sprintf(tt('%d message', '%d messages', $rr['count']), $rr['count'])));
}
$o .= paginate($a);
return $o;
}
if ($a->argc > 1 && intval($a->argv[1])) {
$o .= $header;
$r = q("SELECT `mail`.*, `contact`.`name`, `contact`.`url`, `contact`.`thumb` \n\t\t\tFROM `mail` LEFT JOIN `contact` ON `mail`.`contact-id` = `contact`.`id` \n\t\t\tWHERE `mail`.`uid` = %d AND `mail`.`id` = %d LIMIT 1", intval(local_user()), intval($a->argv[1]));
if (count($r)) {
$contact_id = $r[0]['contact-id'];
$convid = $r[0]['convid'];
$sql_extra = sprintf(" and `mail`.`parent-uri` = '%s' ", dbesc($r[0]['parent-uri']));
if ($convid) {
$sql_extra = sprintf(" and ( `mail`.`parent-uri` = '%s' OR `mail`.`convid` = '%d' ) ", dbesc($r[0]['parent-uri']), intval($convid));
}
$messages = q("SELECT `mail`.*, `contact`.`name`, `contact`.`url`, `contact`.`thumb` \n\t\t\t\tFROM `mail` LEFT JOIN `contact` ON `mail`.`contact-id` = `contact`.`id` \n\t\t\t\tWHERE `mail`.`uid` = %d {$sql_extra} ORDER BY `mail`.`created` ASC", intval(local_user()));
}
if (!count($messages)) {
notice(t('Message not available.') . EOL);
return $o;
}
$r = q("UPDATE `mail` SET `seen` = 1 WHERE `parent-uri` = '%s' AND `uid` = %d", dbesc($r[0]['parent-uri']), intval(local_user()));
require_once "include/bbcode.php";
$tpl = get_markup_template('msg-header.tpl');
$a->page['htmlhead'] .= replace_macros($tpl, array('$nickname' => $a->user['nickname'], '$baseurl' => $a->get_baseurl(true)));
$mails = array();
$seen = 0;
$unknown = false;
foreach ($messages as $message) {
if ($message['unknown']) {
$unknown = true;
}
if ($message['from-url'] == $myprofile) {
$from_url = $myprofile;
$sparkle = '';
} else {
$from_url = $a->get_baseurl(true) . '/redir/' . $message['contact-id'];
$sparkle = ' sparkle';
}
$Text = $message['body'];
$saved_image = '';
$img_start = strpos($Text, '[img]data:');
$img_end = strpos($Text, '[/img]');
if ($img_start !== false && $img_end !== false && $img_end > $img_start) {
$start_fragment = substr($Text, 0, $img_start);
$img_start += strlen('[img]');
$saved_image = substr($Text, $img_start, $img_end - $img_start);
$end_fragment = substr($Text, $img_end + strlen('[/img]'));
$Text = $start_fragment . '[!#saved_image#!]' . $end_fragment;
$search = '/\\[url\\=(.*?)\\]\\[!#saved_image#!\\]\\[\\/url\\]' . '/is';
$replace = '[url=' . z_path() . '/redir/' . $message['contact-id'] . '?f=1&url=' . '$1' . '][!#saved_image#!][/url]';
$Text = preg_replace($search, $replace, $Text);
if (strlen($saved_image)) {
$message['body'] = str_replace('[!#saved_image#!]', '[img]' . $saved_image . '[/img]', $Text);
}
}
$mails[] = array('id' => $message['id'], 'from_name' => template_escape($message['from-name']), 'from_url' => $from_url, 'sparkle' => $sparkle, 'from_photo' => $message['from-photo'], 'subject' => template_escape($message['title']), 'body' => template_escape(smilies(bbcode($message['body']))), 'delete' => t('Delete message'), 'to_name' => template_escape($message['name']), 'date' => datetime_convert('UTC', date_default_timezone_get(), $message['created'], 'D, d M Y - g:i A'));
$seen = $message['seen'];
}
$select = $message['name'] . '<input type="hidden" name="messageto" value="' . $contact_id . '" />';
$parent = '<input type="hidden" name="replyto" value="' . $message['parent-uri'] . '" />';
$tpl = get_markup_template('mail_display.tpl');
$o = replace_macros($tpl, array('$thread_id' => $a->argv[1], '$thread_subject' => $message['title'], '$thread_seen' => $seen, '$delete' => t('Delete conversation'), '$canreply' => $unknown ? false : '1', '$unknown_text' => t("No secure communications available. You <strong>may</strong> be able to respond from the sender's profile page."), '$mails' => $mails, '$header' => t('Send Reply'), '$to' => t('To:'), '$showinputs' => '', '$subject' => t('Subject:'), '$subjtxt' => template_escape($message['title']), '$readonly' => ' readonly="readonly" style="background: #BBBBBB;" ', '$yourmessage' => t('Your message:'), '$text' => '', '$select' => $select, '$parent' => $parent, '$upload' => t('Upload photo'), '$insert' => t('Insert web link'), '$wait' => t('Please wait')));
return $o;
}
}