Python2 在windows控制台运行会出现乱码,改用IronPython解析就好了。
Python2 在windows控制台运行会出现乱码。
一个彻底的解决 办法是改成python3,但工作量太大。
今晚试了下IronPython,,非常好用,直接支持中文了,而且不用改一行代码!!!
因为这个事情浪费了好多时间。把一个QQ机器人的代码改成了py3
注意在Py文件第一行写上: # -*- coding: utf-8 -*-
Python2 在windows控制台运行会出现乱码,改用IronPython解析就好了。
Python2 在windows控制台运行会出现乱码。
一个彻底的解决 办法是改成python3,但工作量太大。
今晚试了下IronPython,,非常好用,直接支持中文了,而且不用改一行代码!!!
因为这个事情浪费了好多时间。把一个QQ机器人的代码改成了py3
注意在Py文件第一行写上: # -*- coding: utf-8 -*-
C# 随机生成手机号码
private string [] telStarts = "134,135,136,137,138,139,150,151,152,157,158,159,130,131,132,155,156,133,153,180,181,182,183,185,186,176,187,188,189,177,178" .Split(',' );
/// <summary>
/// 随机生成电话号码
/// </summary>
/// <returns></returns>
public string getRandomTel()
{
Random ran = new Random();
int n = ran.Next(10, 1000);
int index = ran.Next(0, telStarts.Length - 1);
string first = telStarts[index];
string second = (ran.Next(100, 888) + 10000).ToString().Substring(1);
string thrid = (ran.Next(1, 9100) + 10000).ToString().Substring(1);
return first + second + thrid;
}
不折腾,多年走弯路的经验告诉我,不遵守以下原则必将浪费生命和时间。
没有问题就不要折腾,遇到问题或需求再去研究并解决。
用成熟的技术,不要做技术小白鼠。
不要追求完美 ,世界本来就是不完美的,好和坏是一半一半的。任何事物都有两面性。要接受不完美。
追求简单、 实用、快速、高效。
在Codeigniter中使用Blade模板引擎:
使用compoer引入blade库
composer require "philo/laravel-blade": "3.*"
在helpers目录下创建 view_helper.php
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
require_once 'vendor/autoload.php';
use Philo\Blade\Blade;
if (!function_exists('view')) {
function view($name = NULL, $data = [], $mergeData = [])
{
$CI = &get_instance();
if (!isset($CI->blade)) {
$views = __DIR__ . '/../views';
$cache = __DIR__ . '/../cache';
$CI->blade = new Blade($views, $cache);
$elapsed_time = $CI->benchmark->elapsed_time('total_execution_time_start', 'total_execution_time_end');
$CI->blade->view()->share('elapsed_time', $elapsed_time);
}
echo $CI->blade->view()->make($name, $data, $mergeData)->render();
}
}
在config/autoload.php中,引入
$autoload['helper'] = array('view', 'url');
controller中:
<?php defined('BASEPATH') or exit('No direct script access allowed');
class Welcome extends CI_Controller
{
public function index()
{
return view('index', ['name' => 'haha']);
}
public function test()
{
echo 'this is a test';
}
}
还是喜欢codeigniter的简洁和可扩展性,用来做中小项目还是很爽的。
在万网虚拟主机上,发现laravel无法加载.env中配置的信息,然后一路跟踪发现,问题出在PHPDotEnv这个库上
在Loader.php里有一个函数如下:
public function setEnvironmentVariable($name, $value = null)
{
list($name, $value) = $this->normaliseEnvironmentVariable($name, $value);
// Don't overwrite existing environment variables if we're immutable
// Ruby's dotenv does this with `ENV[key] ||= value`.
if ($this->immutable && $this->getEnvironmentVariable($name) !== null) {
return;
}
putenv("$name=$value");
$_ENV[$name] = $value;
$_SERVER[$name] = $value;
}
里面使用了putenv
函数,这个函数是用于设置或修改环境变量的,目的是把.env里面的配置放到环境变量里面。通过var_dump
查看返回值发现都是NULL, 可以猜测万网虚拟主机应该是禁用了putenv
这个函数。
解决办法就是放弃使用.env文件,把里面的一些配置信息放到config/app.php
里面去。