PyCharmV2022.1支持自定义包存储库的身份验证、改进的 TypedDict 和 Docker 的新服务UI。
2025年06月25日
IT之家 4 月 17 日消息,JetBrains 昨日(4 月 16 日)发布公告,宣布其 Junie AI 编码智能体已进入“生产就绪”(production-ready)状态,能处理编写代码和调试运行等多步骤任务。
JetBrains 同时还更新了旧版 AI Assistant,支持接入 Anthropic Claude 3.7 Sonnet 和 Google Gemini 2.5 Pro 等新模型,并新增聊天界面多文件编辑功能。
2025年06月25日
用最近使用PhpStorm的激活码到期了,就琢磨着换一个编辑器。vscode评价挺好的而且轻量级免费开源,所以决定vscode开发PHP。
2025年06月25日
作者:张勇,腾讯IEG后台开发工程师
时光匆匆 光阴似箭,今年已经是小张做码农的第N个年头了,得益于世界上最好的语言(PHP),小张的头发依旧茂密。但是项目写了一个又一个,PHP、swoole用到飞起,这些年的成长却大不如从前。
2025年06月25日
<?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);
}
}
2025年06月25日
随着时代的发展,社会越来越信息快速化,所以信息更新非常的迅速,这让很多站长在更新自家的网站信息时,显得太浪费时间,该怎么办呢?那就是通过采集将别家的信息录入到自家网站的数据库中,这样做可能对网站的优化会有一定的影响,但这不是我们今天讨论的话题,今天就用一个示例简单讲一下网站采集的的过程
我们先来看下面的一个实例,这是客户的网站要求采集太平洋网站的新闻,代码如下图所示(附说明):
<?php
header("content-type:text/html;charset=utf-8");//
2025年06月25日
PHP函数大全:从Array到Zip,你需要了解的所有函数
在PHP开发中,函数是非常重要的工具。它们提供了各种功能和操作,帮助我们更高效地处理数据和实现各种功能。在本文中,我们将介绍PHP中一些常用的函数,包括Array、Calendar、cURL、Date、Directory、Error、Filesystem、Filter、FTP、HTTP、LibXML、Mail、Math、Misc、MySQLi、SimpleXML、String、XML Parser和Zip函数。
2025年06月25日
熊掌号的API提交分为新增内容接口和历史内容接口两个接口。通过新增内容接口,提交站内 当天新产生内容的链接。新增内容享受24小时内抓取校验、快速展现优待。
第一步:
根据熊掌号要求完成校验页面,官方文档很详细,照着弄就行了
第二步:
开始后台改造
1.进入后台文件夹dede(自己实际的文件夹),然后进入templets目录,打开body_index.htm
2025年06月25日
微信支付很简单,你可以参考微信支付开发文档,一定要仔细阅读开发文档,可以让你少踩点坑;准备工作完成后就是配置参数,调用统一下单接口,支付后异步回调三步。
微信开发文档:
pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=2_1
APP支付流程
从上面的图片中,可以看出来,需要注意的流程是一共是3部分;
第一部分:调用下单API,返回预支付订单,签名之后再返回信息