草庐IT

php - 使用 PHP 读取格式错误的 XML(未编码的 XML 实体)

我在用PHP解析格式错误的XML时遇到了一些问题。特别是我正在查询第三方网络服务,该服务以XML格式返回数据,而没有在实际数据中对XML实体进行编码。例如,其中一个元素包含一个ASCII心形“现在我只是将XML字符串传递到SimpleXMLElement中,可以预见,它在这些实例上会失败。我做了一些环顾四周,看起来PHPTidy包可能会帮助我,但你可以做的配置量是压倒性的:(因此,我只是想知道是否还有其他人遇到过这样的问题,如果有,他们是如何解决的。谢谢! 最佳答案 尝试tidy.repairString:php>$tidy=new

php - 匹配字符集和可选实体

所以我想使用这段代码在字符串的每5个字符中插入一个分词符。([^\s-]{5})([^\s-]{5})不幸的是,它也会在实体字符(&#xxx;)上中断。有人能给我一个不会破坏实体代码的例子吗?我要断开的字符串来自xml,因此实际实体被进一步转义(&#xxx;)。编辑代码示例preg_replace('/([^\s-]{5})([^\s-]{5})/','$1­$2',$subject)Giventheword"Fårevejle"Expect"Få­revejle"asresultButitoutputs"F­5;revejl

php - Doctrine实体一对多关系保存外键为NULL

我环顾四周,这个问题doctrine2OneToManyrelationshipinsertsNULLastheforeignkey与此类似,但没有适合我的答案。使用Doctrine2和类的命名空间在ZendFramework1.6中构建,Doctrine使用它的迁移工具构建了模式。我的代码如下:http://pastie.org/3634009 最佳答案 您是否偶然错过了“双重绑定(bind)”实体。也就是说,您需要执行以下操作:$forum=....//someforum$thread=....//newthread;$foru

php - 在 PHP 中将 utf-8 字符串转换为 UTF16 实体

我有这个代码$message值包含一些希腊词。我想要这样的东西“0393039903910020039D039100200394039F03A5039C0395002003A4039900200398039100200394039F03A5039C0395”但在浏览器中得到一些带有黑色菱形标记的问题我尝试按照这些说明(StackOverflowquestion)但没有成功。我还尝试将文件的编码从UTF-8更改为没有BOM的UTF-8,但还是失败了。在搜索时我发现了这个神奇的网页UnicodeCodeConverter这样我就可以测试我是否获得了正确的实体。

php - 可翻译 Doctrine 实体的 Symfony 表单

我有一个使用TranslatableDoctrineextension翻译的Doctrine实体:locale=$locale;}publicfunctiongetTranslations(){return$this->translations;}publicfunctionaddTranslation(PropertyTranslation$t){if(!$this->translations->contains($t)){$this->translations[]=$t;$t->setObject($this);}}}现在,我想呈现一个表单,其中包含我翻译中可用的每种语言的“名称”

php - Symfony2 - 使用实体数据库 ID 作为表单集合数组键

我正在构建一个表单集合,它输出的行如下:但我想做的是拥有这一点:DB_ID_1将是数据库记录ID的数值。所以我可以像这样打印出模板中的每一行:{{form.items.1}}因此它打印出ID为1的数据库记录的表单元素,目前它打印出键为1的元素,例如真实的数据库ID为9如果需要更多信息,请告诉我。谢谢 最佳答案 我终于在这篇文章的帮助下找到了答案EmbeddingacollectionofformsSymfony2formswithaddinganddeletingallowed这是一个非常简单的解决方案——我找错了地方,我需要在我的

php - 添加不受 Sonata Admin Bundle 管理的实体

我有几个由SonataAdminBundle管理的实体,它们都位于我的仪表板中,没问题。我还有其他自定义实体,不受SonataAdminBundle管理,我想将它们插入我的仪表板。我在不同的论坛上看到我们可以在不同的block中添加内容,但找不到具体的例子。如果您有解决方案或一些线索,我很感兴趣:)最好的问候,埃内斯 最佳答案 管理仪表板是一组block。所以你有一个block来显示托管实体。如果您想显示由您自己的机制处理的其他信息或其他实体,您必须创建一个新block。block由SonataBlockBundle处理,在线文档h

php - 具有默认值和嵌入形式的 Symfony2 实体

我有一个类,它是一种表单类型(并且反过来嵌入到另一种表单中),用于选择公社、地区和国家,每个都有一个下拉列表(地区取决于国家)。我希望在构建国家/地区列表时默认选择某个国家/地区。这是我的:$factory=$builder->getFormFactory();$builder->add('pais','entity',array('class'=>'Codesin\ColegiosBundle\Localidad\Pais','property'=>'nombre','query_builder'=>function(EntityRepository$repositorio){$qb

php - Symfony2 - 在处理实体时覆盖默认的 Doctrine 查询

对于我的项目,我有一个包含许多项目的工作区(一种用户),我想知道是否有一种方法可以在我调用$workspace->getProjects()只获取事件项目(不是存档的项目)。这样我就不必过滤我的集合,而且它会减少从数据库返回的数据的大小。/***Acme\DemoBundle\Entity\Workspace**@ORM\Table()*@ORM\Entity*/classWorkspace{/***@varinteger$id**@ORM\Column(name="id",type="integer")*@ORM\Id*@ORM\GeneratedValue(strategy="AU

php - 如何在 Symfony 2 和 Doctrine 中过滤实体对象内的数据

我有两个实体:Product和Feature。Product还有许多其他Features(一对多关系)。每个Feature都有一个名称和一个重要状态(如果功能重要则为true,否则为false)。我想在TWIG中获得我产品的所有重要功能。下面的解决方案非常难看:Product:{{product.name}}Importantfeatures:{%forfeatureinproduct.features%}{%iffeature.important==true%}-{{feature.name}}{%endif%}{%endfor%}所以我想得到:Product:{{product.n