当前位置:首页 » 编程语言 » consolephp

consolephp

发布时间: 2022-03-31 22:08:35

① 怎样调用app\console\commands中php文件

include 或者require

② php console chrome插件 怎么用

按F12就看到了啊

③ phpstorm console窗口怎么使用

按照惯例依然是从网络上复制一条简介: PhpStorm 是 JetBrains 公司开发的一款商业的 PHP 集成开发工具。PhpStorm可随时帮助用户对其编码进行调整,运行单元测试或者提供可视化debug功能和智能HTML/CSS/javaScript/PHP编辑、代码质量分析、版本控制集成(SVN、GIT)、调试和测试等功能。另外,它还是跨平台。在Windows和MacOS下都可以使用。PhpStorm-让开发更智能,而不是更困难。
听说phpStorm 10支持php7呃
优点
跨平台。
对PHP支持refactor功能。
自动生成phpdoc的注释,非常方便进行大型编程
内置支持Zencode。
生成类的继承关系图,如果有一个类,多次继承之后,可以通过这个功能查看他所有的父级关系。
支持代码重构,方便修改代码。
拥有本地历史记录功能(local history功能)。
方便的部署,可以直接将代码直接upload到服务器。
总之它很牛逼就是了,什么都能干
快捷键
phpStorm有非常非常多并且好用的的快捷键,我下面就举一些经常用的的快捷键演示,还有一些不常用的就不举例了,绝对能提高你开发的效力率...
(Windows与Mac类似,只要把command键换成ctrl)
查询相关
command + f 查找当前文件
command + r 查找替换
command + e 打开最近的文件
command + shift + o 快速查询文件
command + shift + f 关键字查找,更强大的查询器(机器不好的,最好还是先确定一下目录)
command + shift + r 高级替换
command + alt + b 找到当剪类的所有子类
alt + shift + c 查找最近修改的文件
alt + f7 直接查询选中的字符
ctrl + f7 文件中查询选中字符
command + 鼠标点击 跳到类或方法或变量等声明处
command + shift + tab 切换tab页文件
command + shift + +,- 展开或缩起
command + . 折叠或展开选中的代码
自动代码
alt + 回车 导入包,自动修正
command + n 快事为每个成员属性生成 getter 及 setter 方法
ctrl + i 快速生成插入魔术方法
ctrol + o 复写父类方法
command + alt + l 对当前文件进行格式化排版
command + d 复制当剪行
command + / // 注释
command + shift + / / / 注释
以command + n举个例子
我创建了一个Person类在/Entity/目录下,然后我设置一些私有的属性如下代码:
namespace Entity;
class Person
{
private $sign = '';
private $name = '';
private $age = 0;
private $work = '';
private $sex = '女';
}
然后咱们使用command + n 在弹出来的窗口选择"PHPDoc Blocks..." 如下图:
再再弹出的窗口选择所有属性再点"OK":
namespace Entity;
/**
* Class Person
* @package Entity
*/
class Person
{
/**
* @var string
*/
private $sign = '';
/**
* @var string
*/
private $name = '';
/**
* @var int
*/
private $age = 0;
/**
* @var string
*/
private $work = '';
/**
* @var string
*/
private $sex = '女';
}
然后它就对刚刚所选择属性加上了注释...... 是不是灰常神奇。
ok,咱们继续,再次使用command + n键选择Contructor...弹出需要进行传参赋值的属性:
/**
* Person constructor.
* @param string $sign
*/
public function __construct($sign)
{
$this->sign = $sign;
}
如果不选择的话将不需要对成员属性进行设置。
然后咱们再来看看其他功能,比如"Implement Methods..."这个是快速生成魔术方法。
通常咱们设置、获取一个成员属性时最好不要直接使用$person->name = $name 这种方式进行设置参数或取得参数值,建议是对每个属性都开放一个 getter 跟 setter 方法,这样可以很方便得对传进或传出去的值进行处理,这就是上面我为什么要把成员属性设置置为私有的原因之一
同样的command + n 选择"Getters and Stetters" 然后选择所有属性,它就会把所有的属性设置getter及setter方法,这里要注意的是Person的sign是唯一的,不可进行修改,所以咱们要把设置sign的方法去掉。注意: 最好setter方法设置完后返回当剪对象,这样的话咱们就可以连写了并且phpStorm的提示还相当友好下面有例子:
/**
* @return string
*/
public function getSign()
{
return $this->sign;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* @param string $name
* @return $this
*/
public function setName($name)
{
$this->name = $name;
return $this;
}
/**
* @return int
*/
public function getAge()
{
return $this->age;
}
/**
* @param int $age
* @return $this
*/
public function setAge($age)
{
$this->age = $age;
return $this;
}
/**
* @return string
*/
public function getWork()
{
return $this->work;
}
/**
* @param string $work
* @return $this
*/
public function setWork($work)
{
$this->work = $work;
return $this;
}
/**
* @var string
*/
private $sex = '女';
/**
* @return string
*/
public function getSex()
{
return $this->sex;
}
/**
* @param string $sex
* @return $this
*/
public function setSex($sex)
{
$this->sex = $sex;
return $this;
}
连写的例子:
use Entity\Person;
$person = new Person();
$person->setName("蛋蛋")
->setAge(17)
->setWork('student');
最后再演示一个快速复写被继承类的功能。咱们新建一个Man类,然后继承Person类,上面的Person类缺省是女性别,所以我们需要重写它并且加上"中国男人"。同样的使用command + n打开快捷窗口选择 "Override Methods..." 弹出来可被复写的方法:
然后咱们选择getSex跟setSex方法,然后确定,在Man方法下生成以下方法。
namespace Entity;
/**
* Class Man
* @package Entity
*/
class Man extends Person
{
/**
* @return string
*/
public function getSex()
{
return parent::getSex(); // TODO: Change the autogenerated stub
}
/**
* @param int $sex
* @return $this
*/
public function setSex($sex)
{
return parent::setSex($sex); // TODO: Change the autogenerated stub
}
}
咱们把return parent::getSex()跟return parent::setSex( $age )删除掉,不需要这样,然后改成如下模式。
/**
* @return string
*/
public function getSex()
{
if ( ! mb_strpos(parent::getSex(), "中国") )
return "中国".parent::getSex();
return parent::getSex();
}
/**
* @param int $sex
* @return $this
*/
public function setSex($sex)
{
if( ! mb_strpos($sex, "中国") )
$sex = "中国".$sex;
return parent::setSex($sex);
}
碉堡了有木有。
工具类等
看起来好多的样纸,我懒,不想讲可不可以?我就挑几个好不好?
连拉ssh 照着配就行了,很简单
composer 这个也很明了吧,不多说了,平时咱们都是通过命令行来实现的
vagrant 这个phpstorm 10集成了vagrant,介于咱们自己已经搭建好了自己的vagrant环境,就不使用phpstorm所集成的啦
参考: 《使用Virtual Box和Vagrant搭建开发环境》
Database 工具
phpStorm所集成的database工具十分强大,当然它还有单独的database工具叫做: DataGrip,当然需要独立购买,咱们phpStorm有集成,就使用它好啦哈哈....(咱们的PhpStorm可是花钱买的,请支持正版)
Database工具一般在右侧栏,如果没有的话搜一下就好了,多简单的事儿呀...
开始创建一个数据库连接吧...
选择如上图的那个"+"号,然后选择Data Source数据来源,再选择数据库类型,一般咱们都是使用mysql吧,这次咱们试试新的,比如SQLite
选择sqlite数据文件的地址,然后选择驱动,如果没有的话得先下载安装sqlite的驱动插件,这个很简单,在Driver下有提示,照做就是了...
咱们先看一下mysql的配制吧...
mysql的也非常简单,如果需要ssh/ssl连接的话,需要在SSH/SSL选项卡上配配地址入连接密码或sshkey...
配制好了,打开选择的数据库:
上图是连接的数据库的表及表字段信息... 来演示一下查询... 点击那"QL"样的dos窗口图标会弹出一个tab页,咱们可以在这里写sql语句。
咱们查询User表下的所有数据,可以看到会有相当提示,这是相当的好使啊...查询完成后在下面的Database Console上会有显示表数据,可对它进行修改,等等操作增加数据也可以。
快捷键command + alt + l不但对代码进行格式化,也sql语句也是非常有效的,如上图。
在"Database Console"栏上点"Output"选项卡可以查看sql语句执行的情况、记录及所消耗的时间等等信息...
command + 回车 执行sql语句或执行选中的sql语句
关于database工具的用法还有很多很多,我就不一一讲解了,大家可以自己慢慢去研究,真的非常好用
CVS 和 Git
command + k
command + shift + k
关于FTP的配制,由于我不推荐使用,所以这里就不多说啦!
都到这了,那咱们就说说在phpStorm上如何使用git工具吧
算了,还是举一个例子吧,配辣么多太累了,一会我看下有没有已经配好的,如果有的话一会拉出来截个图看看就行吧,反正现在svn用得也比较少了,还是git用得爽,分布式嘛,离线嘛,多好...关于svn -> git可以参考我之前写的一篇文章
《将代码库从Svn迁移Git》
从git服务器上把代码抓到本地
选择CVS -> Checkout from Version Control -> Git
在弹出的窗口输入自己的git仓库信息:
注意 conle 的时间如果没有设置你的github账号的话可能会提示你输入账号信息,咱们输入就行了。如果需要修改的话则在设置里面进行修改,咱们可以使用command + ,打开"Preferences" 然后找到"Version Control"选项目的"GitHub"进行设置,还有"Git"路径。
从mster创建分支
创建分支以通过命令行进行创建,咱们可以通过phpstrom的窗口进行创建,如下:
这个东西在右下角,"Git:master" 然后弹出上面窗口选择"New Branch" 然后输入新分支的名称就好了,它会自动切换到新分支下。
是不是超级简单呀...
提交代码至远程分支
当咱们修改完代码后,咱们需要把代码提交到远程分支上,使用快捷键command + k提交相当修改后的代码,双击文件可以进行对比。在"Commit Message"写上修改的东西然后点提交,这时就把代码提交到本地分支上了。
不使用快捷键的话,可以使用"CVS -> Commit Changes"提交,也会弹出下面窗口...
提交到本地分支后,咱们需要把代码推到远程分支上,所以需要使用快捷键: command + shif + k提交远程分支...
也可以使用"CVS -> Git -> Push"进行提交...效果是一样的
注意svn木有 command + shift + k这一步
合并分支
分并非常简单,只要选择需要合并的分支,然后merge就行了,如下图:
这样就合并完成,当然,如果有冲突的话会提交有冲突,并让你解决,如果没有的话就直接合并成功了...然后就可以push了......
Compare 是对合并的分支进行对比...
使用svn...
灰常抱歉,我电脑上木有找到相关Svn项目的代码,就不多说了...
安装插件
这里讲一个javascript 的安装,使用快捷键cmd + , 打开 Preferances
安装 JavaScript 插件
Languages & Frameworks -> Javascript -> Libraries
选择add需要的框架
安装symfony2插件,搜索插件,然后点install
然后重启phpStorm 就完事了....
注意
灰色+波浪线: 变量未使用
黄色波浪线: 变量未名单词拼写问题
红色波浪线: 变量未定义
还有好多我就不一一举例了,可能是因为我代码写得太好,出错的东西比较少吧...
右边栏出现红色,这点是必须要杜绝的,好的代码不应该出现红色的任何提示...一旦出现一定要马上解决,好的代码不应该出现一个黄、红色的提示。

④ 怎么优雅的输出PHP调试信息

利用浏览器调试模式的Console

1,先定义一个php函数:

functionconsole($log='')
{
switch(empty($log)){
caseFalse:
$out=json_encode($log);
$GLOBALS['console'].='console.log('.$out.');';
break;

default:
echo'<scripttype="text/javascript">'.$GLOBALS['console'].'</script>';

}

}

2,在需要调试的地方直接调用它,递交的参数可以是字符串,也可以是数组。

3,在适当的位置调用无参数的console,用来输出调试信息,比如各类php框架入口文件的最底部

4,打开浏览器(比如chrome),载入页面后进入调试模式(比如按F12键),点击Console,你会发现所有数据都在这里等着你查阅。

5,其他用途

优秀的PHP开源框架ThinkPHP提供了输出运行状态的功能,你可以通过运行状态来了解某个页面在后台处理了多长时间。但是,很多人都注意到了,它是不准确的。

下面我们试着用刚刚加进来的自定义函数console在浏览器中输出真正的运行时间。

所有工作都在入口文件中完成:

在所有代码的最开头,定义变量$s=microtime(true);

在console();的上面再增加console('exetime:'.round(microtime(true)-$s,4));

⑤ 利用浏览器的Javascript控制台调试PHP程序

PHP是一种服务器端脚本语言,用来开发动态web应用程序。与JAVA相比,没有一个好的服务器端调试工具是其限制之一。通常我们都是在PHP代码中添加echo、var_mp等语句,将变量、数组的值显示在浏览器中来达到调试的目的。
现在,越来越多的浏览器都有了开发这工具或者Javascript控制台,通过这些工具,我们可以很方便的显示PHP代码中的变量或数组值。下面我们来做一个例子。例子中的PHP代码有四个跟踪级别:info,
warn,
log,
error,开发人员可以使用浏览器控制台来显示错误变量,数组值。
将下面代码拷贝到PHP文件中,并保存为WebConsole.php
复制代码
代码如下:
<?php
class
WebConsole
{
private
static
function
write($data,
$type
=
'info')
{
$method_types
=
array('error',
'info',
'log',
'warn');
$msg_type
=
'';(PS:T不错的PHP
Q扣峮:304224365,验证:csl)
if(in_array($type,
$method_types))
{
$msg_type
=
sprintf("console.%s",
$type);
}else
{
$msg_type
=
sprintf("console.%s",
'info');
}
if(is_array($data))
{
echo("<script>$msg_type('".implode(',
',
$data)."');</script>");
}
else
{
echo("<script>$msg_type('".$data."');</script>");
}
}
public
static
function
info($data)
{
self::write($data);
}
public
static
function
error($data)
{
self::write($data,
'error');
}
public
static
function
log($data)
{
self::write($data,
'log');
}
public
static
function
warn($data)
{
self::write($data,
'warn');
}
}
?>
现在,导入WebConsole类,并使用跟踪功能。
复制代码
代码如下:
<?php
require_once('WebConsole.php');
$fruits
=
array('apple',
'mange',
'banana');
WebConsole::log($fruits);
WebConsole::info($fruits);
WebConsole::warn($fruits);
WebConsole::error($fruits);
?>
现在打开你的浏览器控制台,你会发现出现类似下面的屏幕截图:

⑥ 如何在windows下拥有php console - 技术问答

我在公司,只要用putty ssh到linux的server, 就可以直接在putty里运行php了,可是我现在是在windows下装的wamp, 没有ssh, 不能用putty啊

⑦ 如何使用app console on device

app console命令是Symfony2中的了,这个命令是小编用到的比较多了,用到多问题也不少了,下文我们来整理一些app console问题总结。

本人在使用php app/console -s进入symfony的shell界面时,上下左右键分别变成^[[A^[[B^[[C^[[D这种样子。另外在使用table键补齐时只是把table键变成缩进,使用过程中非常的不方便。
解决思路:
1、直接搜索^[[A^[[B^[[C^[[D,无果。
2、突然想起以前在python环境中也遇到到类似问题,于是搜索多了一个参考条件。”python shell 乱码”
3、在查找python过程中遇到了readline这个东西
4、然后搜索php readline之后,发现php有个readline扩展。
下面是解决方案1:
下载php源码编译安装,编译安装的时候重新安装readline扩展。

cd php-5.5.20/ext/readline
###执行phpize,并开始编译###
phpize
./configure
make && make install
解决方案2:
经测试,MAMP自带的php各个版本均不包含readline模块,所以也可选择brew安装php。
brew install php55
可能存在php版本链接的问题,ln命令链接一下即可解决,不再赘述。
##完

热点内容
择吉日推算法 发布:2025-01-17 15:29:41 浏览:87
努比亚怎么查看wifi密码 发布:2025-01-17 15:29:36 浏览:202
简单游使用脚本 发布:2025-01-17 15:23:57 浏览:580
linuxcompare 发布:2025-01-17 15:13:24 浏览:433
不能显示隐藏的文件夹 发布:2025-01-17 15:13:24 浏览:530
学生作业管理系统源码 发布:2025-01-17 14:42:31 浏览:172
hue编译器 发布:2025-01-17 14:42:26 浏览:908
马自达编程 发布:2025-01-17 14:21:41 浏览:495
android语音demo 发布:2025-01-17 14:19:25 浏览:703
点歌机怎么选切换安卓系统 发布:2025-01-17 14:05:33 浏览:722