1)ThinkPHP解析带Html标签的数据
{$o.remark}//这个会出现<p>
{$o.remark|stripslashes|htmlspecialchars_decode}//这个可以有
2)后台获取前端U方法传来的参数
前端:{:U("aa",array('id'=>1))}
后台:public function aa(){echo $_GET['id'];}
3)跳转页面并带上参数
U('index',array('p' =>$p))//...&p=2
4)phpexcel下载
public function download() {
header('Content-Type: text/html; charset=utf-8');
set_time_limit(0); //不设操作时限
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />');
//引入PHPExcel库文件
//Vendor('PHPExcel.Classes.PHPExcel');
require_once $_SERVER['DOCUMENT_ROOT'].'/Application/Common/Conf/Classes/PHPExcel.php';
require_once $_SERVER['DOCUMENT_ROOT'].'/Application/Common/Conf/Classes/PHPExcel/IOFactory.php';
//创建对象
//$excel = new PHPExcel();
$excel = new \PHPExcel();
//Excel表格式,这里简略写了8列
$letter = array('A','B','C','D','E','F','F','G');
//表头数组
$tableheader = array('序号','客栈名称','客栈地址','座机','手机','QQ','邮箱');
//填充表头信息
for($i = 0;$i < count($tableheader);$i++) {
$excel->getActiveSheet()->setCellValue("$letter[$i]1","$tableheader[$i]");
}
//表格数组
$data = array(
array('1','B','C','D','E','F','G'),
array('2','B','C','D','E','F','G'),
array('3','B','C','D','E','F','G'),
array('4','B','C','D','E','F','G'),
array('5','B','C','D','E','F','G'),
array('6','B','C','D','E','F','G'),
array('7','B','C','D','E','F','G'),
);
//填充表格信息
for ($i = 2;$i <= count($data) + 1;$i++) {
$j = 0;
foreach ($data[$i - 2] as $key=>$value) {
$excel->getActiveSheet()->setCellValue("$letter[$j]$i","$value");
$j++;
}
}
//创建Excel输入对象
$write = new \PHPExcel_Writer_Excel5($excel);
header("Pragma: public");
header("Expires: 0");
header("Cache-Control:must-revalidate, post-check=0, pre-check=0");
header("Content-Type:application/force-download");
header("Content-Type:application/vnd.ms-execl");
header("Content-Type:application/octet-stream");
header("Content-Type:application/download");;
header('Content-Disposition:attachment;filename="客栈信息.xls"');
header("Content-Transfer-Encoding:binary");
$write->save('php://output');
}
5)点击非提交按钮,结果提交了表单
例如点击【返回】,结果提交了表单
<button class="layui-btn layui-btn-primary" onclick="history.go(-1)">返回</button>
改为
<button class="layui-btn layui-btn-primary" type="button" onclick="history.go(-1)">返回</button>
即强调一下type="button" 即可
6)淘宝API接入
//todo 把三方类库文件放入 vendor 文件夹中
//导入加载第三方类库 tbd 代表目录 TopSdk (\ThinkPHP\Library\Vendor)代表文件 . 代表 /
vendor("tbk.TopSdk");
//请求淘宝客API,实例化类 **注意使用\命名空间**
$c = new \TopClient;
$c->appkey = '你的 appkey';
$c->secretKey = '你的 secretKey';
$req = new \TbkItemInfoGetRequest;
//选择需要查询的字段信息
$req->setFields("num_iid,title,pict_url,small_images,reserve_price,zk_final_price,user_type,provcity,item_url");
$req->setPlatform("2");
$req->setNumIids(I('goodsid'));
$resp = $c->execute($req);
echo "<pre>";
var_dump($resp);
exit();
/*————————————————
版权声明:本文为优快云博主「怀色」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/weixin_36429334/article/details/72866572*/
6)simplexml转数组
// XML转换成数组
private function simplexml_obj2array($obj)
{
if( count($obj) >= 1 )
{
$result = $keys = array();
foreach( $obj as $key=>$value)
{
isset($keys[$key]) ? ($keys[$key] += 1) : ($keys[$key] = 1);
if( $keys[$key] == 1 )
{
$result[$key] = $this->simplexml_obj2array($value);
}
elseif( $keys[$key] == 2 )
{
$result[$key] = array($result[$key], $this->simplexml_obj2array($value));
}
else if( $keys[$key] > 2 )
{
$result[$key][] = $this->simplexml_obj2array($value);
}
}
return $result;
}
else if( count($obj) == 0 )
{
return (string)$obj;
}
}
【tptblog mysqli_connect()函数依赖检查失败】
打开Application/Install/Common/function.php
第72行:mysql_connect 改为mysqli_connect
【bash: composer: command not found】
bash: composer: command not found
下载composer到本地:curl -sS https://getcomposer.org/installer | php
移动至系统服务:sudo mv composer.phar /usr/bin/composer
找到/usr/bin/composer 并改权限为777
查看版本:composer --version
【sql报错,页面上错误信息显示不全,去哪里看到报错的sql全貌】
/Runtime/Logs/Admin
【各种查sql】
//方法一
$Model = new \Think\Model();
$Model = M(myTable);
$sql = "select id from tpt_my_table where 1=1";
$list = $Model->query($sql);
$de_json = json_decode(json_encode($list), TRUE);
$id = $de_json[0]['id'];
$this->assign("id", $id);
//方法二
$table = D('myTable');
// 执行查询
$list = $table
->field('product_id,mainpic,main_category,sub_category,guide_title,product_name,SUM(cast(payment_amount AS DECIMAL)) AS payment_amount_all, SUM(payment_buyers) AS payment_buyers_all')
->group('product_id,mainpic,main_category,sub_category,guide_title,product_name')
->where('1 and statistics_date>="' . $date_count_start . '" and statistics_date<= "' . $date_count_to . '"')
->order('payment_amount_all DESC')
->select();