【问题标题】:php syntax error, quote marks [closed]php语法错误,引号[关闭]
【发布时间】:2013-04-04 11:39:04
【问题描述】:

我有这段代码导致我的脚本崩溃。我敢肯定,我有某种引号混淆。现在已经盯着这个一个小时了,找不到错误。非常感谢任何帮助。

$title 可以包含逗号,可以吗?删除所有变量可以解决问题,也许是我添加它们的方式或它们包含的内容的问题?

$contentopf = "
<?xml version=\"1.0\" encoding=\"utf-8\"?>
<package xmlns=\"http://www.idpf.org/2007/opf\" unique-identifier=\"bookid\" version=\"3.0\" prefix=\"rendition: http://www.idpf.org/vocab/rendition/# ibooks: http://vocabulary.itunes.apple.com/rdf/ibooks/vocabulary-extensions-1.0/\">
  <metadata xmlns=\"http://www.idpf.org/2007/opf\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" >
     <dc:format>application/epub+zip</dc:format>
     <meta name=\"cover\" content=\"cover-image\" />
     <dc:title>".$title."</dc:title>
     <meta property=\"ibooks:version\">0.3.0</meta>
     <dc:creator id=\"aut\">".$fname." ".$lname"</dc:creator>
     <meta refines=\"#aut\" property=\"role\" scheme=\"marc:relators\">aut</meta>
     <meta refines=\"#aut\" property=\"file-as\">".$lname.", ".$fname"</meta>
     <dc:description>!</dc:description>
     <dc:publisher>".$publisher."</dc:publisher>
     <dc:date>".$year."</dc:date>
     <dc:language>".$lang."</dc:language>
     <dc:identifier id='bookid'>urn:uuid:".$uuid."</dc:identifier>
     <meta refines='#bookid' property='identifier-type' scheme='xsd:string'>uuid</meta>
     <dc:identifier id='isbn-id'>urn:isbn:".$isbn."</dc:identifier>
     <meta refines='#isbn-id' property='identifier-type' scheme='onix:codelist5'>15</meta>
     <meta property=\"dcterms:modified\">".$date."</meta>
     <meta property=\"rendition:layout\">pre-paginated</meta>
     <meta property=\"rendition:orientation\">landscape</meta>
     <meta property=\"rendition:spread\">none</meta>
     <meta property=\"ibooks:specified-fonts\">true</meta>
     <meta property='ibooks:iphone-orientation-lock'>landscape-only</meta>                                     
     <meta property='ibooks:ipad-orientation-lock'>landscape-only</meta>                          
</metadata>
";

echo $contentopf;

【问题讨论】:

  • 在 PHP 中创建 XML 的方法较少出错。参见:php.net/manual/en/book.xmlwriter.php 例如(仍有一些库提供更简单的 API)
  • 用于调试页面,设置 apache 和 php 以便它打印错误(在开发环境中),并使用一些 javascript 调试器,如 firebug 或 chrome 开发工具来捕获 js 错误。
  • @jimmy 你检查答案了吗?

标签: php syntax-error epub


【解决方案1】:

你忘了.这里

".$fname"</meta>

应该是

".$fname."</meta>

这里也

".$lname."</dc:creator>

【讨论】:

    【解决方案2】:

    这里缺少点:

     <meta refines=\"#aut\" property=\"file-as\">".$lname.", ".$fname"</meta>
    

    应该是

    <meta refines=\"#aut\" property=\"file-as\">".$lname.", ".$fname."</meta>
    

    PS : 你真的应该考虑改用 printf() 之类的替代方法,它使用占位符。

    【讨论】:

      猜你喜欢
      • 2015-02-26
      • 1970-01-01
      • 1970-01-01
      • 2018-08-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-03
      • 1970-01-01
      相关资源
      最近更新 更多