#1065
展开↯#1066
作者:广西南宁市
艾娜头像,判断头像是否存在,不存在默认显示默认头像
#,广西南宁市,2017-08-16,16:41:07,
php 定位到根目录
thinkphp 的绝对路径
入口文件为基础可以写成
前面有一个点,注意区分后台服务器路径和前台前端路径区别表示
我是这么理解的:
1、APP目录和WEB目录不是一个概念,所以,要定义绝对路径,其文件夹必须在WEB目录下才行。(按你的表述来看,你的【根目录】就是WEB目录,对?)
2、后台(控制器)上传时使用./Public/Uploads,会上传到WEB目录下Public/Uploads文件夹。这就是你想要的结果不是?所以无需改为绝对路径。
3、前台(模板)调用,只需__PUBLIC__/Uploads就可以映射到WEB/Public/Uploads文件夹,如此调用不也是你想要的结果吗?
总结:结果均实现了,纠结相对与绝对有何意义?
提醒:WEB目录下的内容均可以使用绝对路径访问,需要自行组合。 #,广西南宁市,2017-08-17,15:46:51,
圆形头像圆形css圆圈图片
<img src="<?php
if(file_exists('./shearphoto_common/file/shearphoto_file/'.$c['id'].'_big.jpg')) echo '/shearphoto_common/file/shearphoto_file/'.$c['id'].'_big.jpg';
else echo '/0.jpg';
?>" />
Run code
Cut to clipboard
shearphoto 头像插件
Run code
Cut to clipboard
php 定位到根目录
thinkphp 的绝对路径
入口文件为基础可以写成
'savePath'=>"./Public/Uploads/"
Run code
Cut to clipboard
前面有一个点,注意区分后台服务器路径和前台前端路径区别表示
我是这么理解的:
1、APP目录和WEB目录不是一个概念,所以,要定义绝对路径,其文件夹必须在WEB目录下才行。(按你的表述来看,你的【根目录】就是WEB目录,对?)
2、后台(控制器)上传时使用./Public/Uploads,会上传到WEB目录下Public/Uploads文件夹。这就是你想要的结果不是?所以无需改为绝对路径。
3、前台(模板)调用,只需__PUBLIC__/Uploads就可以映射到WEB/Public/Uploads文件夹,如此调用不也是你想要的结果吗?
总结:结果均实现了,纠结相对与绝对有何意义?
提醒:WEB目录下的内容均可以使用绝对路径访问,需要自行组合。
圆形头像圆形css圆圈图片
border-radius: 100%;
Run code
Cut to clipboard
文章:PHP导出Excel,用来对付那些客户是杠杠的 发表时间:2017-08-16, 16:33:39
#1068
作者:广西南宁市
PHP 二分查找
二分查找需要数组有序,效率为O(logn)
输出
二分查找需要数组有序,效率为O(logn)
<?php
#二分查找
function binarySearch(Array $arr, $target) {
$low = 0;
$high = count($arr) - 1;
while($low <= $high) {
$mid = floor(($low + $high) / 2);
#找到元素
if($arr[$mid] == $target) return $mid;
#中元素比目标大,查找左部
if($arr[$mid] > $target) $high = $mid - 1;
#重元素比目标小,查找右部
if($arr[$mid] < $target) $low = $mid + 1;
}
#查找失败
return false;
}
$arr = array(1, 3, 5, 7, 9, 11);
$inx = binarySearch($arr, 1);
var_dump($inx);
?>
Run code
Cut to clipboard
输出
float(0)
Run code
Cut to clipboard
文章:排序和查找算法 发表时间:2017-08-17, 10:26:09
#1069
作者:广西南宁市
欧陆婚纱报名导出对应选项打勾打√
<?php
namespace Addons\Apply\Controller;
use Home\Controller\AddonsController;
use aliyun\api_demo\SmsDemo;
class ApplyController extends AddonsController{
var $model;
function _initialize() {
$this->model = $this->getModel ( 'apply' );
parent::_initialize ();
$act = strtolower ( _ACTION );
$type = I ( 'type' );
$res ['title'] = '列表';
$res ['url'] = addons_url ( 'Apply://Apply/lists' );
$res ['class'] = $act == 'lists' || $type == 'text' ? 'current' : '';
$nav [] = $res;
$res ['title'] = '配置';
$res ['url'] = addons_url ( 'Apply://Apply/config' );
$res ['class'] = $act == 'config' || $type == 'textarea' ? 'current' : '';
$nav [] = $res;
$res ['title'] = '导出';
$res ['url'] = addons_url ( 'Apply://Apply/daochu' );
$res ['class'] = $act == 'daochu' || $type == 'textarea' ? 'current' : '';
$nav [] = $res;
$this->assign ( 'nav', $nav );
}
function daochu(){
//Sever
$Severnewslist=M('sever')->order('id desc')->select();
//dump($Severnewslist);exit;
$newslist=M('apply')->field('id,name,tel,qq,wedding,gender,sever')->select();
foreach($newslist as $nk=>$vs){
$s=explode('<br />',$vs['sever']);
//dump($s);
foreach($Severnewslist as $ks=>$ssv){
$newslist[$nk][$ks]='';
foreach($s as $kss=>$vss){
if($vss==$ssv['sername']) $newslist[$nk][$ks]='√';
}
}
unset($newslist[$nk]['sever']);
}
//dump($newslist);exit;
foreach($Severnewslist as $v){
$sv[]=$v['sername'];
//if($sv) $sv.=',\''.$v.'\'';
//else $sv='\''.$v.'\'';
}
//dump($sv);exit;
//echo $sv;exit;
$dname=date('Y-m-d H:i:s');
//exportexcel($arr,array('id','账户','密码','昵称'),'文件名!');
//$arr=array('0'=>'1','李振球','13607875450','2500152288');
$this->exportexcel($newslist,array_merge(array('id','姓名','手机号','QQ','婚期','性别'),$sv),$dname);//,'抱抱团服务'
}
function news(){
if($_POST['name']){
//dump($_POST);exit;
$add['name']=htmlspecialchars($_POST['name']);
$add['gender']=htmlspecialchars($_POST['gender']);
$add['wedding']=htmlspecialchars($_POST['wedding']);
$add['tel']=htmlspecialchars($_POST['tel']);
$add['qq']=htmlspecialchars($_POST['qq']);
$add['cTime']=time();
//$add['sever']=htmlspecialchars($_POST['sever']);
foreach($_POST['sever'] as $v){
$v=htmlspecialchars($v);
if($sv) $sv.='<br />'.$v;
else $sv=$v;
}
$add['sever']=$sv;
//dump($add);exit;
if(empty($add['name'])){
//如果姓名为空
$this->error('请填写姓名');exit;
}
if(empty($add['gender'])){
//如果性别为空
$this->error('请选择您的性别');exit;
}
if(empty($add['wedding'])){
//如果婚期为空
$this->error('请选择婚期');exit;
}
if(empty($add['tel'])){//如果手机号为空
$this->error('请规范填写手机号');exit;
}
if(empty($add['qq'])){
//如果QQ为空
$this->error('请规范填写QQ号');exit;
}
if(empty($add['sever'])){
//如果验服务为空
$this->error('请勾选本次抱抱团的服务(至少一项)');exit;
}
$adds=M('apply')->add($add);
if($adds){
//dump($_POST);exit;
//发送短信
$tel=$add['tel'];
$code='!';
if($tel && $code) $sendd=$this->dx($tel,$code);
//end
//$this->success('留言提交成功!');exit;
if($sendd->Code=='OK') $this->success('留言提交成功!');
else $this ->error('短信发送失败!','',6);
exit;
}else{
$this ->error('留言提交失败!');
exit;
}
}else{
$newslist=M('sever')->order('id desc')->select();
$this->assign('newslist',$newslist);
$this->display(ONETHINK_ADDON_PATH . 'Apply/View/default/Apply/news.html');
}
}
function ssww(){
exit;
$this ->error('短信发送失败!','',6);
exit;
$this ->error('短信发送失败!','',3000);
exit;
$tel='18777337955';
$code=1;
$n=$this->dx($tel,$code);
dump($n->Code);exit;
}
function olhs() {
$this->news();
return false;
//$select = M('member_public')->where('token="gh_8ed7a5c1cbc4"')->find();
// $decc=$select['addon_config'];
//dump($decc);exit;
//dump($decc->Apply->id);exit;
$newslist=M('sever')->where('1')->order('id desc')->limit(8)->select();
//dump($newslist);exit;
$this->assign('newslist',$newslist);
if(IS_POST){
$post['cTime']=time();
foreach ( $_POST['sever'] as $k => $v) {
$str .= "$v ";//一个空格区分
}
$post['sever']=$str;
$post['gender']=$_POST['sexx'];
$post['name']=htmlspecialchars($_POST['name']);
$post['tel']=htmlspecialchars($_POST['tel']);
$post['qq']=htmlspecialchars($_POST['qq']);
$post['wedding']=$_POST['wedding'];
if(empty($post['name'])){//如果姓名为空
$this->error('请填写姓名');exit;
}
if(empty($post['gender'])){//如果性别为空
$this->error('请选择您的性别');exit;
}
if(empty($post['wedding'])){//如果婚期为空
$this->error('请选择婚期');exit;
}
if(empty($post['tel'])){//如果手机号为空
$this->error('请规范填写手机号');exit;
}
if(empty($post['qq'])){//如果QQ为空
$this->error('请规范填写QQ号');exit;
}
if(empty($_POST['sever'][0])){//如果验服务为空
$this->error('请勾选本次抱抱团的服务(至少一项)');exit;
}
$add=M('apply')->add($post);
if($add>0){
//dump($_POST);exit;
//发送短信
$tel=$post['tel'];
$code='!';
if($tel && $code) $this->dx($tel,$code);
//end
$this->success('留言提交成功!');die;
}else{
$this ->error('留言提交失败!');die;
}
}
$this->display(ONETHINK_ADDON_PATH . 'Apply/View/default/Apply/olhs.html');
}
function index(){
//new SmsDemo();
$map['token']='gh_8ed7a5c1cbc4';
//发送短信
$tel=$post['tel'];
$code='!';
if($tel && $code) $this->dx($tel,$code);
//end
}
//发送短信
function dx($tel,$code){
if(!$tel || !$code) return false;
$config = getAddonConfig ( 'Apply' ); // 获取后台插件的配置参数
$demo = new SmsDemo(
$config['id'],
$config['secret']
);
return $response = $demo->sendSms(
$config['name'], // 短信签名
$config['CODE'], // 短信模板编号
$tel, // 短信接收者
Array( // 短信模板中字段的值
"yzm"=>$code
)/*,
"123"*/
);
}
/**
* 导出数据为excel表格
*@param $data 一个二维数组,结构如同从数据库查出来的数组
*@param $title excel的第一行标题,一个数组,如果为空则没有标题
*@param $filename 下载的文件名
*@examlpe
$stu = M ('User');
$arr = $stu -> select();
exportexcel($arr,array('id','账户','密码','昵称'),'文件名!');
*/
function exportexcel($data=array(),$title=array(),$filename='report'){
header("Content-type:application/octet-stream");
header("Accept-Ranges:bytes");
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:attachment;filename=".$filename.".xls");
header("Pragma: no-cache");
header("Expires: 0");
//导出xls 开始
if (!empty($title)){
foreach ($title as $k => $v) {
$title[$k]=iconv("UTF-8", "GB2312",$v);
}
$title= implode("\t", $title);
echo "$title\n";
}
if (!empty($data)){
foreach($data as $key=>$val){
foreach ($val as $ck => $cv) {
$data[$key][$ck]=iconv("UTF-8", "GB2312", $cv);
}
$data[$key]=implode("\t", $data[$key]);
}
echo implode("\n",$data);
}
}
}
Run code
Cut to clipboard
文章:PHP导出Excel,用来对付那些客户是杠杠的 发表时间:2017-08-16, 16:38:11
#1071
作者:广西南宁市
亲们:收藏一下,能用上。
长城有多长?
21196.18千米
珠穆朗玛峰有多高?
8844.43米
吐鲁番盆地有多低?
海拔-154米
长江有多长?
6397公里
黄河有多长?
5464公里
京杭大运河有多长?
1710公里
故宫面积有多大?
72万平方米
中国有多少人?
超13.73亿人
汉字有多少个?
85568个
中国有多少位皇帝?
408位
秦朝2位,汉朝31位,三国11位,晋朝16位,五代十六国78位,南北朝59位,隋朝3位,唐朝22位,五代十国55位,宋朝18位,金辽西夏35位,元朝18位,明朝16位,清朝12位,还有南明、北元。
其它诸如李自成、张献忠,以及太平天国洪秀全父子、甚至称洪宪帝仅两个月的袁世凯,加起来一共408位。
除了以上数字,这些中国人必知的常识虽然常挂在嘴上,但具体是哪些你都知道吗?
三山
黄山〖安徽〗
庐山〖江西〗
雁荡山〖浙江〗
【五岭】
越城岭
都庞岭
萌诸岭
骑田岭
大庾岭
【五湖】
鄱阳湖〖江西〗
洞庭湖〖湖南〗
太湖〖江苏〗
洪泽湖〖江苏〗
巢湖〖安徽〗
【四海】
渤海
黄海
东海
南海
【四大名桥】
广济桥
赵州桥
洛阳桥
卢沟桥
【四大名园】
熙和园〖北京〗
避暑山庄〖河北承德〗
拙政园〖江苏苏州〗
留园〖江苏苏州〗
【四大名刹】
灵岩寺〖山东长清〗
国清寺〖浙江天台〗
玉泉寺〖湖北江陵〗
栖霞寺〖江苏南京〗
【三大名楼】
岳阳楼〖湖南岳阳〗
黄鹤楼〖湖北武汉〗
滕王阁〖江西南昌〗
【四大名亭】
醉翁亭〖安徽滁县〗
陶然亭〖北京先农坛〗
爱晚亭〖湖南长沙〗
湖心亭〖杭州西湖〗
【四大古镇】
景德镇〖江西〗
佛山镇〖广东〗
汉口镇〖湖北〗
朱仙镇〖河南〗
【四大碑林】
西安碑林〖陕西西安〗
孔庙碑林〖山东曲阜〗
地震碑林〖四川西昌〗
南门碑林〖台湾高雄〗
【四大名塔】
嵩岳寺塔〖河南登封嵩岳寺〗
飞虹塔〖山西洪洞广胜寺〗
释迦塔〖山西应县佛宫寺〗
千寻塔〖云南大理崇圣寺〗
【四大石窟】
莫高窟〖甘肃敦煌〗
云岗石窟〖山西大同〗
龙门石窟〖河南洛阳〗
麦积山石窟〖甘肃天水〗
【四大书院】
白鹿洞书院〖江西庐山〗
岳麓书院〖湖南长沙〗
嵩阳书院〖河南嵩山〗
应天书院〖河南商丘〗
【四大佛教名山】
浙江普陀山〖观音菩萨〗
山西五台山〖文殊菩萨〗
四川峨眉山〖普贤菩萨〗
安徽九华山〖地藏王菩萨〗
【四大道教名山】
武当山〖湖北〗
龙虎山〖江西〗
齐云山〖安徽〗
青城山〖四川〗
【四大名绣】
苏绣〖苏州〗
湘绣〖湖南〗
蜀绣〖四川〗
广绣(粤绣)〖广东〗
【四大名扇】
檀香扇〖江苏〗
火画扇〖广东〗
竹丝扇〖四川〗
绫绢扇〖浙江〗
【四大名花】
牡丹〖河南洛阳〗
水仙〖福建漳州〗
菊花〖浙江杭州〗
山茶〖云南昆明〗
【十大名茶】
西湖龙井、洞庭碧螺春
黄山毛峰、都匀毛尖
六安瓜片、君山银针
信阳毛尖、武夷岩茶
安溪铁观音、祁门红茶
【十大名酒】
茅台、五粮液
洋河大曲、泸州老窖
汾酒、郎酒
古井贡酒、西凤酒
董酒、剑南春
【十大避暑圣地】
贵阳、昆明
承德、哈尔滨
长春、伊春
丽江、吉林
呼伦贝尔、大连
壮美山河难以历数,中华文化源远流长!
转帖( '▿ ' )
长城有多长?
21196.18千米
珠穆朗玛峰有多高?
8844.43米
吐鲁番盆地有多低?
海拔-154米
长江有多长?
6397公里
黄河有多长?
5464公里
京杭大运河有多长?
1710公里
故宫面积有多大?
72万平方米
中国有多少人?
超13.73亿人
汉字有多少个?
85568个
中国有多少位皇帝?
408位
秦朝2位,汉朝31位,三国11位,晋朝16位,五代十六国78位,南北朝59位,隋朝3位,唐朝22位,五代十国55位,宋朝18位,金辽西夏35位,元朝18位,明朝16位,清朝12位,还有南明、北元。
其它诸如李自成、张献忠,以及太平天国洪秀全父子、甚至称洪宪帝仅两个月的袁世凯,加起来一共408位。
除了以上数字,这些中国人必知的常识虽然常挂在嘴上,但具体是哪些你都知道吗?
三山
黄山〖安徽〗
庐山〖江西〗
雁荡山〖浙江〗
【五岭】
越城岭
都庞岭
萌诸岭
骑田岭
大庾岭
【五湖】
鄱阳湖〖江西〗
洞庭湖〖湖南〗
太湖〖江苏〗
洪泽湖〖江苏〗
巢湖〖安徽〗
【四海】
渤海
黄海
东海
南海
【四大名桥】
广济桥
赵州桥
洛阳桥
卢沟桥
【四大名园】
熙和园〖北京〗
避暑山庄〖河北承德〗
拙政园〖江苏苏州〗
留园〖江苏苏州〗
【四大名刹】
灵岩寺〖山东长清〗
国清寺〖浙江天台〗
玉泉寺〖湖北江陵〗
栖霞寺〖江苏南京〗
【三大名楼】
岳阳楼〖湖南岳阳〗
黄鹤楼〖湖北武汉〗
滕王阁〖江西南昌〗
【四大名亭】
醉翁亭〖安徽滁县〗
陶然亭〖北京先农坛〗
爱晚亭〖湖南长沙〗
湖心亭〖杭州西湖〗
【四大古镇】
景德镇〖江西〗
佛山镇〖广东〗
汉口镇〖湖北〗
朱仙镇〖河南〗
【四大碑林】
西安碑林〖陕西西安〗
孔庙碑林〖山东曲阜〗
地震碑林〖四川西昌〗
南门碑林〖台湾高雄〗
【四大名塔】
嵩岳寺塔〖河南登封嵩岳寺〗
飞虹塔〖山西洪洞广胜寺〗
释迦塔〖山西应县佛宫寺〗
千寻塔〖云南大理崇圣寺〗
【四大石窟】
莫高窟〖甘肃敦煌〗
云岗石窟〖山西大同〗
龙门石窟〖河南洛阳〗
麦积山石窟〖甘肃天水〗
【四大书院】
白鹿洞书院〖江西庐山〗
岳麓书院〖湖南长沙〗
嵩阳书院〖河南嵩山〗
应天书院〖河南商丘〗
【四大佛教名山】
浙江普陀山〖观音菩萨〗
山西五台山〖文殊菩萨〗
四川峨眉山〖普贤菩萨〗
安徽九华山〖地藏王菩萨〗
【四大道教名山】
武当山〖湖北〗
龙虎山〖江西〗
齐云山〖安徽〗
青城山〖四川〗
【四大名绣】
苏绣〖苏州〗
湘绣〖湖南〗
蜀绣〖四川〗
广绣(粤绣)〖广东〗
【四大名扇】
檀香扇〖江苏〗
火画扇〖广东〗
竹丝扇〖四川〗
绫绢扇〖浙江〗
【四大名花】
牡丹〖河南洛阳〗
水仙〖福建漳州〗
菊花〖浙江杭州〗
山茶〖云南昆明〗
【十大名茶】
西湖龙井、洞庭碧螺春
黄山毛峰、都匀毛尖
六安瓜片、君山银针
信阳毛尖、武夷岩茶
安溪铁观音、祁门红茶
【十大名酒】
茅台、五粮液
洋河大曲、泸州老窖
汾酒、郎酒
古井贡酒、西凤酒
董酒、剑南春
【十大避暑圣地】
贵阳、昆明
承德、哈尔滨
长春、伊春
丽江、吉林
呼伦贝尔、大连
壮美山河难以历数,中华文化源远流长!
转帖( '▿ ' )
文章:在创业这件事上,不成功是普遍常态,成功者才是异数 发表时间:2017-08-16, 11:33:08
#1072
作者:广西南宁市
百度,与阿里和腾讯还不是一个档次上的,我讲的是领导人格局。
先说阿里巴巴。
阿里系的支付宝、阿里巴巴、淘宝、阿里云、菜鸟等,推动中国信用社会、电子支付、小企业发展、个人创业都有巨大的贡献。基于阿里领袖级别的定位,他自己卖电器、服装、生鲜、快递之类的实体,想必都可以做到中国数一数二的规模。可是阿里没有这么干,坚决做别人做不了的,或者还没能力做的事情,从而推动中国商业变革。很多行业,阿里要进入的话,基本都是选择收购创业公司,比如收购UC、高德地图、大众点评、入股快车等,而不是看到哪个火,自己搞一个,将别人搞垮。
再说说腾讯。
说心里话,在3Q大战之前,腾讯的格局也很小。只要别人做得好的网站或游戏,腾讯就会抄过来,然后利用自己的社交流量优势击垮对手,这是作恶和流氓的表现。3Q大战,腾讯有一段著名的“腾讯做了一个艰难的决定”的台词,要求用户在QQ和360之间二选一,将用户绑架进企业利益之争,引起媒体和用户的口诛笔伐,可谓是作恶的颠峰之作。
但3Q大战之后,腾讯开始了反思,开始不再关注产品,而是做平台,利用自己的流量和资金,收购和扶植中小创业者,或者提供入口,将流量给予创业者共享,共同发展,也就是建设生态的思路,大家在这个生态中共同成长,而不是利用优势地位搞垮对手。另一个,就是微信,可以说是腾讯口碑最好的产品,包括公众平台,给千千万万创业者创造了机会。如果要进入一些行业,就会选择用资金和流量拆价入股,但仍然尊重创始人,由创始人控制企业。从这些现象可以看出,腾讯的格局变大了,开始远离作恶,成为社会的推动者。
最后讲讲百度。
这些年百度作过哪些恶?魏则西事件、血友病贴吧事件还历历在目。这样的一个企业,为了钱真的可以不顾公众生命安全,利用搜索的有利位置不择手段的赚钱,这是作恶的极致了吧。
将搜索广告直接插入到搜索结果的顶部和下部,如果不熟悉的人,就会被这些广告给误导。在百度这里,钱真能使鬼推磨。
再看看百度外卖,一个搜索技术公司居然干起了外卖,好好利用自己的技术优势发展科技不好?非要不务正业?说白了,就是利益驱动。
包括百度贴吧、百度知道、百度空间、百度百科、百度文库等,都是在市场上已经很火、根本没多少技术含量的东西,靠内容取胜的业务,市场上已经有成功的企业。但百度推出这些百度产品,利用自己的搜索流量优势,打压对手,从而起到壮大自己,消灭对手的效果。
这是多么可恶的企业行为?
百度本来是可以对标谷歌这样的世界级科技公司的,正如阿里VS亚马逊、腾讯VS脸书,成为受人尊敬的世界级企业。谷歌难道不知道将广告放在搜索结果里面更赚钱?谷歌难道不知道卖假药的能付得起更多的广告费?谷歌难道不知道做外卖?但谷歌没有。谷歌在做阿尔法狗、谷歌地球、量子科技、疾病研究、谷歌气球等开创性的研究。这是谷歌不作恶的企业文化在指引着谷歌前进,而不是一味的追逐利益。这点和阿里、现在的腾讯很像、
再看看谷歌是怎么面对中小创业者,主要是以巨额收购为主,前后共200多家公司。谷歌为什么不利用自己的行业地位,自己做一个类似的,然后将对手打垮?
看看百度和谷歌在股票市场上的表现,基本上跟这些年百度创新泛力息息相关。
从2011年开始,谷歌股价从240上涨到现在的近1000美金,市值6500亿美金。
而同期百度,在2014年创造自己的新高之后,反而一路下滑,现在市值仅700亿美金不到,只有谷歌的九分之一。
这并非投资人不看好中国概念股,同期的阿里巴巴股价一路攀升,现在市值3000多亿美金了,离亚马逊1000亿美元,两个涨停板的距离。
可以说,百度占据了有利的位置,政府都帮忙(谷歌退出中国),一手好牌,却被自己打烂了。百度在中国已经被阿里和腾讯越甩越远。 #,广西南宁市,2017-07-29,11:06:00, 谷歌的江湖地位BAT中只有阿里相匹配。只是走的路线不一样。百度走的也是谷歌路线,然而谷歌走的是通向罗马的大道,而百度一直在为罗马大道两边臭水沟里的硬币摸索而步履蹒跚。 #,广西南宁市,2017-07-29,11:07:52, 阿里不是没卖过服装,而是卖的很差——所以解散了这支当时隶属于天猫的团队。最终得出结论:阿里适合做电商平台,不擅长自己卖货。 #,广西南宁市,2017-07-29,11:08:07, 腾讯利益相关者会这么推崇阿里?腾讯的进步是有目共睹的。 #,广西南宁市,2017-07-29,11:08:29, 谷歌是卖医疗广告被罚惨了才不做的。 #,广西南宁市,2017-07-29,11:08:47, 别的不说,腾讯各部分都在进步,尤其是腾讯动漫近年出了好几部诚意之作,虽然腾讯游戏(以某TIMI制作的游戏,全民系列,天天系列为代表)还是扶不上墙,这个部门除了收购跟抄袭几乎还真没干过点别的。希望未来能更好吧。微信做的真的很好。 #,广西南宁市,2017-07-29,11:09:32, 很好奇李彦宏知不知道这些啊?为什么他们没有任何改变的动作? #,广西南宁市,2017-07-29,11:09:44, 阿里自己搞一个来往 #,广西南宁市,2017-08-16,10:52:32, 百度一下,离死不远。
先说阿里巴巴。
阿里系的支付宝、阿里巴巴、淘宝、阿里云、菜鸟等,推动中国信用社会、电子支付、小企业发展、个人创业都有巨大的贡献。基于阿里领袖级别的定位,他自己卖电器、服装、生鲜、快递之类的实体,想必都可以做到中国数一数二的规模。可是阿里没有这么干,坚决做别人做不了的,或者还没能力做的事情,从而推动中国商业变革。很多行业,阿里要进入的话,基本都是选择收购创业公司,比如收购UC、高德地图、大众点评、入股快车等,而不是看到哪个火,自己搞一个,将别人搞垮。
再说说腾讯。
说心里话,在3Q大战之前,腾讯的格局也很小。只要别人做得好的网站或游戏,腾讯就会抄过来,然后利用自己的社交流量优势击垮对手,这是作恶和流氓的表现。3Q大战,腾讯有一段著名的“腾讯做了一个艰难的决定”的台词,要求用户在QQ和360之间二选一,将用户绑架进企业利益之争,引起媒体和用户的口诛笔伐,可谓是作恶的颠峰之作。
但3Q大战之后,腾讯开始了反思,开始不再关注产品,而是做平台,利用自己的流量和资金,收购和扶植中小创业者,或者提供入口,将流量给予创业者共享,共同发展,也就是建设生态的思路,大家在这个生态中共同成长,而不是利用优势地位搞垮对手。另一个,就是微信,可以说是腾讯口碑最好的产品,包括公众平台,给千千万万创业者创造了机会。如果要进入一些行业,就会选择用资金和流量拆价入股,但仍然尊重创始人,由创始人控制企业。从这些现象可以看出,腾讯的格局变大了,开始远离作恶,成为社会的推动者。
最后讲讲百度。
这些年百度作过哪些恶?魏则西事件、血友病贴吧事件还历历在目。这样的一个企业,为了钱真的可以不顾公众生命安全,利用搜索的有利位置不择手段的赚钱,这是作恶的极致了吧。
将搜索广告直接插入到搜索结果的顶部和下部,如果不熟悉的人,就会被这些广告给误导。在百度这里,钱真能使鬼推磨。
再看看百度外卖,一个搜索技术公司居然干起了外卖,好好利用自己的技术优势发展科技不好?非要不务正业?说白了,就是利益驱动。
包括百度贴吧、百度知道、百度空间、百度百科、百度文库等,都是在市场上已经很火、根本没多少技术含量的东西,靠内容取胜的业务,市场上已经有成功的企业。但百度推出这些百度产品,利用自己的搜索流量优势,打压对手,从而起到壮大自己,消灭对手的效果。
这是多么可恶的企业行为?
百度本来是可以对标谷歌这样的世界级科技公司的,正如阿里VS亚马逊、腾讯VS脸书,成为受人尊敬的世界级企业。谷歌难道不知道将广告放在搜索结果里面更赚钱?谷歌难道不知道卖假药的能付得起更多的广告费?谷歌难道不知道做外卖?但谷歌没有。谷歌在做阿尔法狗、谷歌地球、量子科技、疾病研究、谷歌气球等开创性的研究。这是谷歌不作恶的企业文化在指引着谷歌前进,而不是一味的追逐利益。这点和阿里、现在的腾讯很像、
再看看谷歌是怎么面对中小创业者,主要是以巨额收购为主,前后共200多家公司。谷歌为什么不利用自己的行业地位,自己做一个类似的,然后将对手打垮?
看看百度和谷歌在股票市场上的表现,基本上跟这些年百度创新泛力息息相关。
从2011年开始,谷歌股价从240上涨到现在的近1000美金,市值6500亿美金。
而同期百度,在2014年创造自己的新高之后,反而一路下滑,现在市值仅700亿美金不到,只有谷歌的九分之一。
这并非投资人不看好中国概念股,同期的阿里巴巴股价一路攀升,现在市值3000多亿美金了,离亚马逊1000亿美元,两个涨停板的距离。
可以说,百度占据了有利的位置,政府都帮忙(谷歌退出中国),一手好牌,却被自己打烂了。百度在中国已经被阿里和腾讯越甩越远。
文章:为什么百度外卖彻底掉了队? 发表时间:2017-07-29, 10:56:29
#1073
作者:广西南宁市
一个IE兼容性提供了多少就业岗位 #,广西南宁市,2017-08-16,10:24:03, IE死的快些对开发人员有好处。
文章:针对各种浏览器css不兼容的写法 发表时间:2017-08-16, 10:23:49
#1074
作者:广西南宁市
文章:vue.js学习笔记 发表时间:2017-08-14, 18:13:55
#1075
作者:广西南宁市
随机生成10个不重复的0-100的数字
在面试时,面试官问了我一道js题:随机生成一个含有10个元素的数组,且元素为0-100的不重复的整数。当时的第一反应是for循环生成10个数字,但是可能会有重复的情况;进一步思考,需要对生成的数字进行验证才能放到数组里面,但是问题来了,如果恰好有重复的,那我之前for循环生成的10个数字就不够了。当时回答的不好,回来后再仔细思考一下,想出了2中解决方案,第一种其实是尝试过程中得出的,还是第二种比较好。
第一种:
第二种:
在面试时,面试官问了我一道js题:随机生成一个含有10个元素的数组,且元素为0-100的不重复的整数。当时的第一反应是for循环生成10个数字,但是可能会有重复的情况;进一步思考,需要对生成的数字进行验证才能放到数组里面,但是问题来了,如果恰好有重复的,那我之前for循环生成的10个数字就不够了。当时回答的不好,回来后再仔细思考一下,想出了2中解决方案,第一种其实是尝试过程中得出的,还是第二种比较好。
第一种:
function random () {
var arr = [];
for (var i = 0; i < 100; i++) {//生成循环100次,生成100个数字。该方法最大的弊端,为了避免有重复的情况导致数组不足10个元素,所以生成较多的数字
var num = Math.floor(Math.random() * 100);//生成0-100的随机整数
if (arr.length == 0) {
arr.push(num);//数组为空时直接放入数组
} else {
for (var j = 0; j < arr.length; j++) {//循环已存在的数组
if (arr.join(',').indexOf(num) < 0 && arr.length <= 10) {//判断已存在数组中是否已有刚生成的数字,如没有且数组长度不足10才将num放入arr
arr.push(num); //这样又会导致生成的大部分数字被arr.length <= 10排除掉了,浪费性能
}
}
}
}
}
Run code
Cut to clipboard
第二种:
function random () {
var arr = [];
while(arr.length < 10) {//原数组长度为0,每次成功添加一个元素后长度加1,则当数组添加最后一个数字之前长度为9即可
var num = Math.floor(Math.random() * 100);//生成一个0-100的随机整数
if (arr.length === 0) {//如果数组长度为0则直接添加到arr数组
arr.push(num);
} else {
for (var i = 0; i < arr.length; i++) {//当新生成的数字与数组中的元素不重合时则添加到arr数组
if (arr.join(',').indexOf(num) < 0) {
arr.push(num);
}
}
}
}
}
Run code
Cut to clipboard
文章:js生成随机数(指定范围)的代码 发表时间:2017-08-15, 17:44:20
#1076
作者:广西南宁市
Cannot use object of type stdClass as array
PHP“Cannot use object of type stdClass as array”
php再调用json_decode从字符串对象生成json对象时,如果使用[]操作符取数据,会得到下面的错误
错误:
Cannot use object of type stdClass as array
产生原因:
解决方法(2种):
1、使用 json_decode($d, true)。就是使json_decode 的第二个变量设置为 true。
2、json_decode($res) 返回的是一个对象, 不可以使用 $res['key'] 进行访问, 换成 $res->key 就可以了。
参考手册:json_decode
Return Values:Returns an object or if the optional assoc parameter is TRUE, an associative array is instead returned. #,广西南宁市,2017-08-15,17:38:14,
php给对象动态增加属性
示例代码
输出
补充:对象可以调用对象所属类的静态方法,如
#,广西南宁市,2017-08-15,17:40:28,
php 静态方法 静态变量和继承
代码
结果
说明
从示例来看,PHP是允许覆写静态变量的,覆写静态方法也可以(去掉注释)。只是在运行时,如果发现本类中没有的方法,就会去父类中找,但是父类中用了self,self的变量就在方法所在的类中直接取,而不会回溯到调用方法的类中去找。
PHP“Cannot use object of type stdClass as array”
php再调用json_decode从字符串对象生成json对象时,如果使用[]操作符取数据,会得到下面的错误
错误:
Cannot use object of type stdClass as array
产生原因:
$res = json_decode($res);
$res['key']; //把 json_decode() 后的对象当作数组使用。
Run code
Cut to clipboard
解决方法(2种):
1、使用 json_decode($d, true)。就是使json_decode 的第二个变量设置为 true。
2、json_decode($res) 返回的是一个对象, 不可以使用 $res['key'] 进行访问, 换成 $res->key 就可以了。
$res->key
Run code
Cut to clipboard
参考手册:json_decode
Return Values:Returns an object or if the optional assoc parameter is TRUE, an associative array is instead returned.
php给对象动态增加属性
示例代码
<?php
error_reporting(-1);
ini_set('display_errors','on');
class A {
public $a = 'hello';
public function add() {
$this->b = 'world';
}-
public static function p() {
echo 'world',PHP_EOL;
}-
}
$a = new A;
$a->add();
$a->c = 'test';
$a->p();
var_dump($a);
Run code
Cut to clipboard
输出
world
object(A)#1 (3) {
["a"]=>
string(5) "hello"
["b"]=>
string(5) "world"
["c"]=>
string(4) "test"
}
Run code
Cut to clipboard
补充:对象可以调用对象所属类的静态方法,如
$a->p();
Run code
Cut to clipboard
php 静态方法 静态变量和继承
代码
<?php
class A {
public static $count = 1;
public static function func() {
echo __METHOD__,' count: ',self::$count,PHP_EOL;
}
}
class B extends A {
public static $count = 2;
// public static function func() {
// echo __METHOD__,' count: ',self::$count,PHP_EOL;
// }
}
B::func();
A::func();
Run code
Cut to clipboard
结果
A::func count: 1
A::func count: 1
Run code
Cut to clipboard
说明
从示例来看,PHP是允许覆写静态变量的,覆写静态方法也可以(去掉注释)。只是在运行时,如果发现本类中没有的方法,就会去父类中找,但是父类中用了self,self的变量就在方法所在的类中直接取,而不会回溯到调用方法的类中去找。
文章:Weiphp微信公众平台自定义菜单等开发 发表时间:2017-08-09, 16:46:18
#1077
作者:广西南宁市
哈哈, 我也想说这个......... #,广西南宁市,2017-08-15,17:32:01,
James Damore从来不认为那是一个“自己深爱的Google”,这就是他写那篇文章的原因之一,特别是当他被解雇之后,他更加确信这一点,庆幸自己离开了Google,并且已经多次在媒体上表达了这一想法。
至于他的观点,是一个早已被社会学,生物学以及考古学研究成果证明过多次,却在政治正确的大环境下被刻意压制的自然真理。这个真理就是,社会定位以及自我认知的倾向性最终会导致生理上的选择性进化。用人话来讲就是,那些富于领导力,野心勃勃的女强人们,因为不讨男人喜欢而更难嫁出去,结果她们的基因就在人类进化树上渐渐失传了。
总之一句话,大自然并没有生来就把男性塑造得更富领导力,今天的状态是进化偶然性叠加的结果,否认自然选择,否认基因承载个性的人。要么就是无知到否认工蜂从生理上就服从于蜂王,要么就是被白左和平权主义绑架的伪君子。
作为一个自认为对历任东家都有杰出贡献的员工以及一个自认为对同事足够包容的IT团队负责人,如果我所在的企业出现了这些变态式的平权倾向,我会立刻辞职,不会等到第二天。
最后要说的是,很多年以来,我一直是一个坚定的谷歌黑,根本原因就在于,我认为谷歌是一家彻头彻尾的伪君子企业,张口不作恶,闭口改变世界,开拓任何新业务,一上来就要先把自己摆上道德神坛,然后一个个登月项目死得尸横遍野。这样的作风,忽悠下小年轻也就罢了,在真正懂社会,懂商业的人看来,实在是让人作呕。
James Damore从来不认为那是一个“自己深爱的Google”,这就是他写那篇文章的原因之一,特别是当他被解雇之后,他更加确信这一点,庆幸自己离开了Google,并且已经多次在媒体上表达了这一想法。
至于他的观点,是一个早已被社会学,生物学以及考古学研究成果证明过多次,却在政治正确的大环境下被刻意压制的自然真理。这个真理就是,社会定位以及自我认知的倾向性最终会导致生理上的选择性进化。用人话来讲就是,那些富于领导力,野心勃勃的女强人们,因为不讨男人喜欢而更难嫁出去,结果她们的基因就在人类进化树上渐渐失传了。
总之一句话,大自然并没有生来就把男性塑造得更富领导力,今天的状态是进化偶然性叠加的结果,否认自然选择,否认基因承载个性的人。要么就是无知到否认工蜂从生理上就服从于蜂王,要么就是被白左和平权主义绑架的伪君子。
作为一个自认为对历任东家都有杰出贡献的员工以及一个自认为对同事足够包容的IT团队负责人,如果我所在的企业出现了这些变态式的平权倾向,我会立刻辞职,不会等到第二天。
最后要说的是,很多年以来,我一直是一个坚定的谷歌黑,根本原因就在于,我认为谷歌是一家彻头彻尾的伪君子企业,张口不作恶,闭口改变世界,开拓任何新业务,一上来就要先把自己摆上道德神坛,然后一个个登月项目死得尸横遍野。这样的作风,忽悠下小年轻也就罢了,在真正懂社会,懂商业的人看来,实在是让人作呕。
文章:把138亿年历史压缩到1年里的时间简史会是怎样 发表时间:2017-08-15, 12:03:42
#1078
作者:广西南宁市
还有第二年?这叫缩短到1年? #,广西南宁市,2017-08-15,12:02:43, 下一年的事情还没发生,只是计算出来的 #,广西南宁市,2017-08-15,12:02:57, 把到现在的时间缩短为一年,第二年是未来的 #,广西南宁市,2017-08-15,12:03:11, 把 138 亿年的历史压缩到 1 年里
未来不在此历史中。
未来不在此历史中。
文章:把138亿年历史压缩到1年里的时间简史会是怎样 发表时间:2017-08-15, 12:02:32
#1080
作者:广西南宁市
Nginx官网提供了三个类型的版本
Mainline version:Mainline 是 Nginx 目前主力在做的版本,可以说是开发版
Stable version:最新稳定版,生产环境上建议使用的版本
Legacy versions:遗留的老版本的稳定版 #,广西南宁市,2017-08-14,18:18:54,
软件开发环境(Software Development Environment,SDE)是指在基本硬件和宿主软件的基础上,为支持系统软件和应用软件的工程化开发和维护而使用的一组软件,简称SDE。它由软件工具和环境集成机制构成,前者用以支持软件开发的相关过程、活动和任务,后者为工具集成和软件的开发、维护及管理提供统一的支持。
项目部署环境一般可分为三种:生产环境,测试环境,开发环境
开发环境:开发环境时程序猿们专门用于开发的服务器,配置可以比较随意,为了开发调试方便,一般打开全部错误报告和测试工具,是最基础的环境。开发环境的分支,一般是feature分支。
测试环境:一般是克隆一份生产环境的配置,一个程序在测试环境工作不正常,那么肯定不能把它发布到生产服务器上,是开发环境到生产环境的过度环境。测试环境的分支一般是develop分支,部署到公司私有的服务器或者局域网服务器上,主要用于测试是否存在bug,一般会不让用户和其他人看到,并且测试环境会尽量与生产环境相似。
生产环境: 生产环境是指正式提供对外服务的,一般会关掉错误报告,打开错误日志,是最重要的环境。部署分支一般为master分支。
三个环境也可以说是系统开发的三个阶段:开发->测试->上线,其中生产环境也就是通产说的真实的环境,最后交给用户的环境。
Mainline version:Mainline 是 Nginx 目前主力在做的版本,可以说是开发版
Stable version:最新稳定版,生产环境上建议使用的版本
Legacy versions:遗留的老版本的稳定版
软件开发环境(Software Development Environment,SDE)是指在基本硬件和宿主软件的基础上,为支持系统软件和应用软件的工程化开发和维护而使用的一组软件,简称SDE。它由软件工具和环境集成机制构成,前者用以支持软件开发的相关过程、活动和任务,后者为工具集成和软件的开发、维护及管理提供统一的支持。
项目部署环境一般可分为三种:生产环境,测试环境,开发环境
开发环境:开发环境时程序猿们专门用于开发的服务器,配置可以比较随意,为了开发调试方便,一般打开全部错误报告和测试工具,是最基础的环境。开发环境的分支,一般是feature分支。
测试环境:一般是克隆一份生产环境的配置,一个程序在测试环境工作不正常,那么肯定不能把它发布到生产服务器上,是开发环境到生产环境的过度环境。测试环境的分支一般是develop分支,部署到公司私有的服务器或者局域网服务器上,主要用于测试是否存在bug,一般会不让用户和其他人看到,并且测试环境会尽量与生产环境相似。
生产环境: 生产环境是指正式提供对外服务的,一般会关掉错误报告,打开错误日志,是最重要的环境。部署分支一般为master分支。
三个环境也可以说是系统开发的三个阶段:开发->测试->上线,其中生产环境也就是通产说的真实的环境,最后交给用户的环境。
文章:程序员编程常用网页工具集[游戏] 发表时间:2017-08-14, 18:17:55
#1082
作者:广东省深圳市盐田区
文章:vue.js学习笔记 发表时间:2017-08-14, 15:46:07
function sd(){ var ns=0; //var nons=0; //console.log($("input:checked").length);return false; $("#main p").find("input[type='radio']").each(function(){ if($(this).is(":checked")){ //alert($(this).val()); ns=parseInt(ns)+parseInt($(this).val()); //nons=0; }//else nons=1; }); if(!ns) ns=0.0001; if(ns && (($("input:checked").length)=='10')) location.href = '/index.php?s=/addon/Nwd/Nwd/index/wd/'+ns+'.html'; else alert('请回答所有问题再提交哦'); /*var s=getRadioValue('s'); if(s) location.href = '/index.php?s=/addon/Wdtest/Wdtest/index/id/'+s+'.html'; else alert('请选择答题项!');*/ }
0.0000001 修复 0 不存在bug