可锐资源网

技术资源分享平台,提供编程学习、网站建设、脚本开发教程

php 发送微信订阅消息(php小程序订阅消息)

<?php

namespace app\api\service;

use app\api\exception\ApiException;
use app\api\traits\Singleton;
use think\Cache;
use think\Log;

/**
 * 微信发送消息
 * Class ExpressService
 * @package app\api\service
 */
class WxMessageService extends BaseService
{
    private $appid = 'xxxxxx'; //填入服务号AppID
    private $appsecret = 'xxxxxxxxxxxxxxx'; //填入服务号AppSecret
    /**
     * @param string $openid 微信用户的openid
     * @param string $template_id 消息的模板id
     * @param array $data 需要的参数,为数组,类型为[key=>value],key为模板中的参数,value为参数的值
     */
    public function sendMessage($openid, $template_id, $data, $page_params=null)
    {
        $access_token_info = $this->getAccessTokenNoCode();
        $access_token = $access_token_info['access_token'];

        //要发送给微信接口的数据
        $send_data = [
            "touser" => $openid,
            "template_id" => $template_id,
        ];

        $demo_data = [];
        foreach($data as $k=>$v){
            $demo_data[$k] = [
                "value" => $v
            ];
        }
        $send_data['data'] = $demo_data;

        if(!empty($page_params)){
            $send_data['page'] = $page_params;
        }

        //print_r($send_data);die;
        $url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=".$access_token;
        $result = $this->curl_post($url,$send_data);//dump($result);exit;
        $result = json_decode($result, true);
        //print_r($result);
        if($result['errcode']==0){
            return true;
        }else{
            return false;
        }
    }



    private function getAccessTokenNoCode()
    {
        $wxAppID = $this->appid;
        $wxAppSecret = $this->appsecret;
        $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$wxAppID."&secret=".$wxAppSecret;
        $result = $this -> http_request($url);
        $result = json_decode($result, true);
        return $result;
    }

    private function http_request($url,$data=null){
        $curl = curl_init();
        curl_setopt($curl,CURLOPT_URL,$url);
        curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,FALSE);
        curl_setopt($curl,CURLOPT_SSL_VERIFYHOST,FALSE);
        if(!empty($data)){
            curl_setopt($curl,CURLOPT_POST,1);
            curl_setopt($curl,CURLOPT_POSTFIELDS,$data);
        }
        curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
        $output = curl_exec($curl);
        curl_close($curl);
        return $output;
    }

    private function curl_post($url, array $params = array())
    {
        $data_string = json_encode($params);//dump($data_string);exit;
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_HEADER, 0);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
        curl_setopt(
            $ch, CURLOPT_HTTPHEADER,
            array(
                'Content-Type: application/json'
            )
        );
        $data = curl_exec($ch);
        curl_close($ch);
        return ($data);
    }
}

PHPMAILER实现PHP发邮件功能php实例

这篇文章主要为大家详细介绍了PHPMAILER实现PHP发邮件功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了PHPMAILER实现PHP发邮件功能的具体代码,供大家参考,具体内容如下

第一步:打开网址下载PHPMailer,PHPMailer 需要 PHP 的 sockets 扩展支持,而登录 QQ 邮箱 SMTP 服务器则必须通过 SSL 加密的, PHP 还得包含 openssl 的支持。

以PHP门面模式实现简单的邮件发送

前言:

门面模式属于设计模式中三大分类之一的结构类型,也叫外观模式。其作用对客户端低耦合底层功能的封装,客户端不用知道子系统间的调用。


举例:

门面模式就相当于电脑主机,用户要打开某个应用程序,只需要知道两步。打开开机按钮,电脑开机后再打开应用。开机按钮就相当于一个门面,里面的开机需要调用不同的模块,比如硬件自检,选择启动盘,加载引导,加载内核,OS初始化,启动指定级任务等,以下也通过发邮件的例子描述门面一模式。

如何避免PHP文件上传失败?20个常见的PHP文件上传错误解决方法

在 PHP 文件上传过程中,常见的错误包括文件大小超过限制、上传目录不存在或无写入权限、上传文件不是有效的图像文件等。可以通过调整服务器配置或 PHP 脚本来解决这些错误。同时,建议始终对上传文件进行安全检查,以防止潜在的安全漏洞。

在 PHP 中上传文件时,可能会遇到多种错误,这些错误可能是由于代码错误或服务器配置错误等原因引起的。以下是一些常见的 PHP 文件上传错误以及如何解决它们:

在线上传解压PHP文件代码,压缩/压缩(网站一键打包)支持密码登录

在线上传解压PHP文件代码,压缩/压缩(网站一键打包)支持密码登录

资源宝分享:www.httple.net

如果你没有主机控制面板这个是最好选择,不需要数据库,上传当控制面板使用,无需安装任何扩展,安全高,需要账号密码登录

习惯了各种框架的文件上传,php原生上传图片你还记得吗?

序言:如今各种框架层出不穷,如thinkphp、laravel、yii等,对于功能的封装也是各显其能,以至于很多开发者离开了框架之后就不会开发了,今天我以实际的例子介绍最基本的图片上传功能,希望对一些朋友有所帮助。

thinkphp5的上传功能

php nginx 修改文件上传最大大小(nginx限制文件大小)

修改php nginx文件上传的最大大小限制,需要同时修改php的配置文件和nginx的配置文件,并重启php和nginx生效。


修改php文件最大上传大小限制

1、查找php.ini配置文件在服务器中的路径。

PHP如何上传文件(php上传文件夹)

文件上传是网站开发中常见的功能之一,它可以使用户轻松上传图片、音频、视频等文件。在PHP中,实现文件上传也非常简单。下面为大家介绍具体的步骤,让你的网站功能更加强大。

步骤一:创建文件上传表单

首先,我们需要在HTML中创建一个文件上传的表单,用于让用户选择要上传的文件。具体的HTML代码如下:

在表单中我们使用了标签来创建一个文件选择框,用户可以通过点击按钮选择要上传的文件。

给你代码:短链接生成原理(短链接生成app)

短链接,顾名思义就是在形式上比较短的链接。最早存在于微博(如新浪微博,http://t.cn,http://url.cn)分享网址中。比如这样的:http://t.cn/Aidjddvo

短链接的好处

  1. 内容需要(比如短信,微博中链接字数的限制);
  2. 便于管理(方便后台跟踪点击量,便于统计);
  3. 用户友好(看起来很Cool,提升用户体验)

大致思路是定义一个URL映射算法,将长的URL映射到短的URL,使用数据库或缓存文件存储映射关系,实现映射算法。其中关键部分在于映射算法,接下来我们就详细说下映射算法。

PHP四个月短期培训真的能学会吗?(php入门教程培训)

PHP开发行业是近几年十分火热的行业之一,吸引了大批年轻人前来学习,希望能够通过参加PHP培训进入到互联网行业中来,成为一位高薪的PHP开发人员。但是一些人在选择参加PHP培训时也会有这样的疑问:“学习PHP在培训机构四个月真的能学会吗?”,大家有这样的疑问也是无可厚非的,毕竟大家付出了一定的时间金钱,也希望自己最终能够学有所成,那么PHP培训四个月真的能学会吗?今天小编就来为大家分析—下这—问题。

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言