Tag: PHP的

如何在运行CLI和Apache2Handler时将系统环境variables导入到PHP中?

我的系统是Ubuntu ,我在/etc/environment设置了我的环境variables。 如果我使用CLI运行PHP脚本,则会识别/etc/environment中的环境variables。 但是,如果我通过http://domain/test.php (即apache2handler )执行PHP脚本,则完全相同的脚本会输出NULL,这意味着不会加载/etc/environment中的环境variables。 我所做的修复是在/etc/apache2/envvars添加variables,并解决了这个问题。 但这是两个不同的文件,然后必须保持同步。 我如何使PHP / Apache加载并从/etc/environment (system)中识别环境variables? 编辑:澄清的事情,当我说'没有加载到PHP'这意味着variables从/etc/environment没有设置$_SERVER , $_ENV , getenv()并不存在$GLOBALS 。 换句话说,“不加载到PHP”。

用于访问RabbitMQ(AMQP)的最佳PHP客户端库?

在RabbitMQ网站上有一个PHP客户端列表 。 我正在问这个问题,希望那些使用过这些的人能够在这里分享他们的经验。 例如 你有没有麻烦安装? 它是稳定的吗? 有没有任何性能问题? 文档/支持如何? 即使您刚使用过这些库,请分享您的经验。 作为参考,这里列出的一些客户: AMQP的PHP手册页 php-amqp – 由StudiVZ开发和使用的客户端,最初基于RabbitMQ-C php-amqplib是py-amqplib的一个端口 php-amqplib更新了php-amqplib的分支,以支持PHP 5.3 AMQP客户端的PECL版本 PS我知道“最佳…”是“主观的”,但这个问题的重点是收集经验,帮助人们对这些AMQP图书馆做出明智的决定。 请不要因为它里面有“最好”这个词而下意识地closures这个问题。 PPS我在RHEL 5上使用PHP 5.3。

高效的PHP自动加载和命名策略

和大多数networking开发人员一样,我现在非常享受固体MVC架构的好处。 使用PHP进行MVC时,自动加载显然非常方便。 我已经成为spl_autoload_register的粉丝,只是简单地定义一个__autoload()函数,因为如果您将不同的基本模块(每个模块都使用自己的自动加载)合并在一起,这显然更加灵活。 不过,我从来没有感觉到我写的加载函数。 它们涉及大量的string检查和目录扫描,以查找可能的类加载。 例如,假设我有一个基本path定义为PATH_APP的应用程序,以及一个带有名为models , views和controllers目录的简单结构。 我经常使用一个命名结构,在相应的目录下文件被命名为IndexView.php和IndexController.php ,默认情况下,模型通常没有特定的scheme。 我可能有这样的结构的加载函数,这是获得注册与spl_autoload_register : public function MVCLoader($class) { if (file_exists(PATH_APP.'/models/'.$class.'.php')) { require_once(PATH_APP.'/models/'.$class.'.php'); return true; } else if (strpos($class,'View') !== false) { if (file_exists(PATH_APP.'/views/'.$class.'.php')) { require_once(PATH_APP.'/views/'.$class.'.php'); return true; } } else if (strpos($class,'Controller') !== false) { if (file_exists(PATH_APP.'/controllers/'.$class.'.php')) { require_once(PATH_APP.'/controllers/'.$class.'.php'); return true; } } return false; } 如果在此之后没有find,我可能有另一个function来扫描模型目录中的子目录。 […]

MySQL的工作台与phpMyAdmin

我只使用phpMyAdmin,但后来我偶然发现看起来很有前途的MySQL Workbench。 我不知道是否有人尝试过,可以给你的想法相比,phpMyAdmin。 它可以完全取代phpMyAdmin?

Symfony 2 – 如何将数据传递给formBuilder?

我在表单中使用实体select列表。 我只想使用特定的实体(例如:只有用户所属的组)。所以,在控制器中,我得到这些组,并试图将它们传递给formBuider 。 控制器: /…/ $groups = $em->getRepository('VendorMyBundle:Group')->getUserGroups($user); $form = $this->createForm(new Message($groups), $message); /…/ 所以现在怎么办? 如何在formBuilder中使用它? 如何改变这一行以使用传递的数组? ->add('group','entity',array('class' => 'Vendor\MyBundle\Entity\Group', 'label'=>'Group:')) 或者以另一种方式: class MessageType { /…/ public function buildForm(FormBuilder $builder, array $options) { $builder ->add('group','entity', array( 'class' => 'Vendor\MyBundle\Entity\Group', 'property' => 'name', 'query_builder' => function ($repository) { $qb = $repository->createQueryBuilder('group'); $qb->add('where', 'group.administrator = :user'); $qb->setParameter('user', […]

有没有字典在PHP?

例如: $names = {[bob:27, billy:43, sam:76]}; 然后能够像这样引用它: $names[bob]

PHP PDO – $ dbh和$ sth代表什么?

在PDO的例子中,我经常使用$dbh和$sth的缩写词。 我想$dbh代表“数据库句柄” – 对吗? 那么$sth呢? “声明句柄”? 有没有很好的理由使用上述而不是$db_connection和$query (或其他适当的)?

更改php.ini文件后是否需要重新启动Apache?

如果我对php.ini文件中的设置进行了更改,是否需要重新启动Apache以使其生效?

将属性添加到PHP中的对象

你如何添加一个属性到PHP中的对象?

如何在Yii2中使用swiftMailer

我终于无法理解如何在Yii2中使用swiftMailer扩展。 从这个问题来看,我没有发现问题,这个任务是微不足道的,但是直到最后我都听不懂。 有一些例子没有更详细地描述发送信件的所有周期或我不明白的东西:( build立 return [ //…. 'components' => [ …… 'mail' => [ 'class' => 'yii\swiftmailer\Mailer', 'transport' => [ 'class' => 'Swift_SmtpTransport', 'host' => 'localhost', 'username' => 'username', 'password' => 'password', 'port' => '587', 'encryption' => 'tls', ], ], ] ]; 发送 Yii::$app->mail->compose() ->setTo($toEmail) ->setFrom([$this->email => $this->name]) ->setSubject($this->subject) ->setTextBody($this->body) ->send(); 我想要得到一个具体的工作例子 。 谢谢。 PS我调整了域名loggingMX,DKIM,SPF添加。 […]